gcc库文件和头文件搜索路径
来源:互联网 发布:淘宝童装小模特多少钱 编辑:程序博客网 时间:2024/05/08 03:51
一、compile-time库文件搜索路径
1.如果编译时指定了-L选项,就优先到-L指定的路径去查找库进行连接;2.查找GCC的环境变量LIBRARY_PATH
3.到/bin /usr/lib /usr/local/lib去查找。这几个搜索路径在gcc下是默认的。
所以当我们要让自己添加的库文件让gcc能搜索到,有两种方法,一种就是用-L指定,一种就是将库复制到以上几个gcc默认搜索路径。
二、run-time库搜索路径
1.编译时用-Wl, -rpath指定的路径2.环境变量LD_LIBRARY_PATH指定的路径
3./etc/ld.so.conf指定的路径
4.默认的动态搜索库路径/lib /usr/lib
三、几个重要的命令
1)ldd bin_name可以查看编译出来的可执行文件依赖的库。部署程序时,我们要把这些库拷贝出来,然后将这些库连同可执行文件拷贝到新的机器上,在/etc/ld.so.conf.d下添加对应的库文件搜索路径即可。
2.ldconfig命令
搜索/lib和/usr/lib以及/etc/ld.so.conf下列出来的所有路径的库,然后创建动态库的cache文件。当程序需要搜索库时就会搜索ld.so.cache里列出来的库。
所以当我们向系统添加新的库文件时,除了需要把库文件烤到/usr/local/lib等指定位置外,还需ldconfig一下来更新cache文件。
四、gcc头文件的搜索路径
1.优先搜索-I指定的路径
2.查找GCC的环境变量C_INCLUDE_PATH/CPLUS_INCLUDE_PATH/OBJC_INCLUDE_PATH指定的路径
3.查找默认的搜索路径/usr/include /usr/local/include
所有GCC的环境变量,我们都可以GCC的原有搜索路径上上面添加进我们自己的路径,例如
#增加.so搜索路径
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/liheyuan/soft/lib
#增加.a搜索路径
LIBRARY_PATH=$LIBRARY_PATH:/home/liheyuan/soft/lib
#增加bin搜索路径
export PATH=$PATH:/home/liheyuan/soft/bin
#增加GCC的include文件搜索路径
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/home/liheyuan/soft/include
-wall -pedantic
-wall编译时显示所有的警告信息,可以增加程序的健壮性和可移植性
-pedantic,以符合ANSI/ISO C 标准列出所有警告
0 0
- gcc/g++ 头文件和库文件搜索路径
- 转:GCC头文件和库文件搜索路径问题
- 转:GCC头文件和库文件搜索路径问题
- gcc库文件和头文件搜索路径
- 指定GCC 库文件 和头文件 搜索路径
- gcc/g++ 头文件和库文件搜索路径
- 转:GCC头文件和库文件搜索路径问题
- 为GCC添加头文件和库的搜索路径
- gcc 头文件搜索路径
- linux gcc 编译时头文件和库文件搜索路径inux gcc 编译时头文件和库文件搜索路径
- gcc头文件库文件搜索路径问题
- Linux gcc 头文件以及库文件的搜索路径
- gcc头文件库文件搜索路径问题
- [转]gcc头文件库文件搜索路径问题
- gcc头文件库文件搜索路径问题
- gcc头文件库文件搜索路径问题
- gcc头文件库文件搜索路径问题(转…
- gcc和arm-linux-gcc默认头文件库搜索路径
- unity3d读取csv文件
- android adb 源码框架分析(1 系统)
- RCP Editor 修改状态
- BDS之链表
- ENDNOTE 使用中总是出现this library appears to be damaged。。
- gcc库文件和头文件搜索路径
- Oracle Access 数据库连接
- android adb 源码框架分析(2 角色)
- 注意点
- Velocity模板引擎入门
- 免费ARP的格式
- 单个节点的VM会因为平台维护而被强制重启吗?
- UVA 10054
- gzip: stdin: not in gzip format