码迷,mamicode.com
首页 > 其他好文 > 详细

编译链接总结

时间:2014-08-21 22:43:34      阅读:272      评论:0      收藏:0      [点我收藏+]

标签:使用   文件   ar   sp   on   c   程序   har   

1. -L增加一个搜索路径,不一定要跟-l放在一起;不区别静态链接和动态链接。

2. 用-lxx与 libxx.a的区别是:前者会搜索多个路径。

3. 使用-lxx链接动态库时,动态库所在的目录不一定在搜索路径,可以加到/etc/ld.so.conf中,或者/etc/ld.so.conf.d/libxx.conf,并重启ldconfig。(ldd)

4. 动态链接库可以访问可执行程序内定义的函数,动态链接库可以相互访问函数,使用dlopen指定RTLD_GLOBAL。

5. 使用libxx.a与把xx.a中的所有.o列出来的区别是:前者以.o为单位找符号,如果整个.o中没有这个符号,则不链接进去,后者会将所有的。o都链接到可执行文件。

6. 编译动态库时gcc -c -fPIC xx.c, gcc -shared -o xx.so xx.o, export LD_LIBRARY_PATH=`pwd`

编译链接总结,布布扣,bubuko.com

编译链接总结

标签:使用   文件   ar   sp   on   c   程序   har   

原文地址:http://www.cnblogs.com/Torstan/p/3928188.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!