linux同名动态库如何同时使用的探究

目前还在研究,没有明确是的方法

方法1是重命名其中一个库,如果库中有同名的符号的话,可以使用

-fvisibility=hidden,编库的时候对函数加上就可以不对外暴露此接口

-Bsymbolic 强制采用本地的全局变量定义,这样就不会出现动态链接库的全局变量定义被应用程序/动态链接库中的同名定义给覆盖了

方法2采用wrapper 库,但是链接符号的问题还没搞清楚,先放几个相关链接

https://stackoverflow.com/questions/6538501/linking-two-shared-libraries-with-some-of-the-same-symbols 这个说的最相关

http://www.voidcn.com/article/p-vgeuuxhf-btv.html

https://stackoverflow.com/questions/565459/c-wrapper-with-same-name

https://stackoverflow.com/questions/19739828/how-to-rename-a-shared-library-to-avoid-same-name-conflict

间接依赖库so的路径问题

https://www.cnblogs.com/oloroso/p/13224975.html

原文链接: https://www.cnblogs.com/wangshaowei/p/13721432.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    linux同名动态库如何同时使用的探究

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/391122

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月31日 上午10:27
下一篇 2023年3月31日 上午10:27

相关推荐