本文主要记录了gcc共享库的制作和使用过程。
(1)命名规则
(a)lib+名字+.os
(2)制作步骤
(a)生成与位置无关的代码(.o文件)
gcc -fPIC -c *.c
共享库只记录相对位置。
(b)将.o打包成共享库(动态库)
gcc -shared -o libMyCalc.so *.o -Iinclude
(3)发布和使用共享库
生成可执行文件方法一:
gcc main.c lib/libMyCalc.so -o app –Iinclude
方法二:
gcc main.c -Iinclude -Linclude -L./lib -lMyCalc -o myapp
查看可执行文件依赖的库:ldd myapp
这里的libMyCalc.so显示未找到,解决该问题请看我的博客《解决程序执行时动态库无法被加载的问题》https://blog.csdn.net/HuYingJie_1995/article/details/82985961