那年,一步一步学linux c ---关于动态链接库
2019-07-13 00:23发布
生成海报
分类:
嵌入式linux c 编程 2012-02-29 23:25
3494人阅读
收藏
举报
linuxclibrarypathgcc
在做完mini6410移植全攻略后,打算把自己的linux c笔记,贴出来和大家共享,有不对支持希望大家指出,谢谢!!
转载请注明出处:http://blog.csdn.net/muge0913/article/details/7308178
在上篇文章中,是对静态链接库的介绍,其实有了上面的介绍动态链接库的制作就简单了,这篇来制作动态链接库~~~
创建动态链接库:
[cpp]
view plaincopyprint?
- #gcc –shared –Wall –fPIC bar.o foo.o –olibfoobar.so
#gcc –shared –Wall –fPIC bar.o foo.o –olibfoobar.so
或手动指定库路径
[cpp]
view plaincopyprint?
- $ gcc -o foobar main.c-llt -B /path/to/lib
$ gcc -o foobar main.c-llt -B /path/to/lib
这里的-B 选项就添加 /path/to/lib 到gcc搜索的路径之中。这样链接没有问题但是方法II
中手动链接好的程序在执行时候仍旧需要指定库路径(链接和执行是分开的)。需要添加系
统变量 LD_LIBRARY_PATH :
[cpp]
view plaincopyprint?
- $ exportLD_LIBRARY_PATH=/path/to/lib
$ exportLD_LIBRARY_PATH=/path/to/lib
查看动态链接库 和上次比 有发现没~~~~~~
[cpp]
view plaincopyprint?
- $ ldd test
- linux-gate.so.1 => (0xffffe000)
- libfoobar.so => /usr/lib/libfoobar.so (0xb7f58000)
- libc.so.6 => /lib/libc.so.6 (0xb7e28000)
- /lib/ld-linux.so.2 (0xb7f6f000)
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮