一步一步学Linux C:关于动态链接库


在上篇文章中(),是对静态链接库的介绍,其实有了上面的介绍动态链接库的制作就简单了,这篇来制作动态链接库~~~

创建动态链接库:

#gcc –shared –Wall –fPIC bar.o foo.o –olibfoobar.so  

或手动指定库路径

$ gcc -o foobar main.c-llt -B /path/to/lib  

这里的-B 选项就添加 /path/to/lib 到gcc搜索的路径之中。这样链接没有问题但是方法II中手动链接好的程序在执行时候仍旧需要指定库路径(链接和执行是分开的)。需要添加系统变量 LD_LIBRARY_PATH :

$ exportLD_LIBRARY_PATH=/path/to/lib   

查看动态链接库  和上次比 有发现没~~~~~~

  1. $ ldd test          
  2. linux-gate.so.1 => (0xffffe000)  
  3. libfoobar.so => /usr/lib/libfoobar.so (0xb7f58000)  
  4. libc.so.6 => /lib/libc.so.6 (0xb7e28000)  
  5. /lib/ld-linux.so.2 (0xb7f6f000)   

相关内容