您的位置:首页 > 其它

编译时连接与运行时链接及静态库链接

2017-03-09 09:54 288 查看

出处:http://blog.csdn.net/u011011827/article/details/59176127

//本地编译器动态库编译时链接
-L
/lib
/usr/lib
/usr/local/lib

编译时链接的话,能查到libname.so
且这个文件要不是个link,要不就是实际的动态库文件,否则会报错
说链接顺序没有意义,因为并不链接到文件里面去
注意:
不包括LD_LIBRARY_PATH与/etc/ld.so.conf.
上面两种配置是运行时链接要参考的路径,并不是编译时链接要参考的路径.
//本地编译器动态库运行时链接
1. 编译目标代码时指定的动态库搜索路径;-Wl,-rpath,
2. 环境变量 LD_LIBRARY_PATH 指定的动态库搜索路径
3. 配置文件 /etc/ld.so.conf 中指定的动态库搜索路径
4. 默认的动态库搜索路径 /lib
5. 默认的动态库搜索路径 /usr/lib
//交叉编译器动态库编译时链接

如果是交叉编译器的话,例如可以在/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi/lib这里添加
//交叉编译器动态库运行时链接
//静态库编译时链接
//静态库没有运行时链接的概念,因为已经被链接进可执行文件里去了
-L
/lib
/usr/lib
/usr/local/lib
顺序暂不更新
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编译