关于linux的头文件和库文件

蹲街弑〆低调 提交于 2019-11-26 19:13:56

1. 头文件

1)系统标准头文件位置: /usr/include下
安装库的头文件位置:/usr/local/include/

如 #include<linux/can.h> 对应 /usr/include/linux/can.h

#include<stdio.h> 对应 /usr/include/stdio.h

#include <libusb-1.0/libusb.h> 对应 /usr/local/include/libusb-1.0/libusb.h


2)使用 -I 来指示非标准位置的头文件
如 gcc -I/usr/local/include test.c    
指示编译器不仅在标准位置也在/usr/local/include位置查找头文件

2. 库文件
-系统标准库文件位置:/lib /usr/lib

-用户安装库位置: /usr/local/lib

默认只搜索标准c语言库,对于系统标准库中的其他库以及安装库,需要在编译时指定库名。对于非系统标准库还需通过-L来指定库文件位置。

1)C标准库,不需要-l 以及-L,编译时自动连接/lib/x86_64-linux-gnu/libc.so.6:gcc -o test test.c

2)标准库中的其他库,如libmath.so:gcc -o test test.c -lm
安装库:如:libusb-1.0.so,gcc -o libusb-test usbtest3.0.c -lpthread -lusb-1.0

3)非系统标准库:gcc -o usbtest usbtest.c -L/home/baoli/libusb -lusb

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!