C语言头文件和库的搜索顺序

#include <>与#include ""

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

gcc搜索头文件顺序

  1. 参数-I指定的路径
    指定路径有多个路径时,按指定路径的顺序搜索
  2. **gcc的环境变量 **
    C_INCLUDE_PATH
    CPLUS_INCLUDE_PATH
    OBJC_INCLUDE_PATH
  3. 找系统目录
    /usr/include
    /usr/local/include
    /usr/lib/gcc-xxxx/xxxx

linux 库文件的搜索顺序

  1. 编译目标代码时指定
  2. 环境变量
    LD_LIBRARY_PATH
  3. 配置文件中的指定
    /etc/ld.so.conf
  4. ** 默认动态库搜索路径**
    /lib
  5. 默认动态库搜索路径
    /usr/lib

你可能感兴趣的:(C语言头文件和库的搜索顺序)