Linux头文件和库文件搜索

来源:互联网 发布:硬盘序列号查询软件 编辑:程序博客网 时间:2024/05/16 06:25

头文件搜索路径

搜索顺序依次是:
1. 如果是双引号引用的头文件则会先搜索当前目录,否则跳过此步骤;
2. 搜索-I指定的目录;
2. 搜索gcc的环境变量CPLUS_INCLUDE_PATH(C程序使用的是C_INCLUDE_PATH);
3. 依次搜索gcc的内定目录:
   /usr/include
   /usr/local/include
   /usr/lib/gcc/x86_64-redhat-Linux/${gcc_version}/include

   ${gcc_version}的获取命令是:echo gcc -v 2>&1 | awk '/^gcc version/ { print $3 }'

动态库搜索路径

搜索顺序依次是:
1. ELF可执行文件中动态段中DT_RPATH所指定的路径。即在编译目标代码时, 对gcc加入链接参数“-Wl,-rpath”指定动态库搜索路径
2. 环境变量LD_LIBRARY_PATH 指定的路径
3. /etc/ld.so.cache中所缓存的动态库路径,这个可以通过先修改配置文件/etc/ld.so.conf中指定的动态库搜索路径,然后执行ldconfig命令来改变。
4. /lib
5. /usr/lib

0 0
原创粉丝点击