linux gcc头文件搜索路径

时间:2020-12-21 17:45:14

#include <>: 直接到系统指定的某些目录中去找某些头文件。
#include "": 先到源文件所在文件夹去找,然后再到系统指定的某些目录中去找某些头文件

1、-I指定的路径(绝对或相对路径)
2、环境变量 C_INCLUDE_PATH, CPLUS_INCLUDE_PATH, OBJC_INCLUDE_PATH
3、指定的目录
  /usr/include
  /usr/local/include
4、/usr/lib/gcc ... /include (不同系统或不同)

当#include使用相对路径的时候,gcc最终会根据上面这些路径,来最终构建出头文件的位置。
如#include <sys/types.h>就是包含文件/usr/include/sys/types.h