动态库链接静态库

遇到要编译产生个动态库,该动态库会链接个静态库,所以想在把静态库链接进动态库中。

这个动态库(.so)链接静态库(.a)的总结 - 很实用讲解很清楚里面说,静态库所包含的目标文件,得是加-fPIC的才行。但是gcc使用---动态库链接静态库里说不用加。后者上的例子,我在本地可以复现。但是比着葫芦画瓢用在项目中,就是报错

/usr/bin/ld: ./libic.a(vp4c.o): relocation R_X86_64_PC32 against symbol `_p4bits8' can not be used when making a shared object; recompile with -fPIC

后续

还是加上-fPIC比较好,PIC和重定位是不同的概念。

浅谈静态库和动态库
UNIX再学习 -- 静态库与共享库

相关书籍
《深入理解计算机系统》 链接
《程序员的自我修养》

posted @ 2020-09-11 21:16  Tifa_Best  阅读(378)  评论(0编辑  收藏  举报