创建动态库时,建议使用的链接选项Bsymbolic

来源:互联网 发布:网络教育入学时间 编辑:程序博客网 时间:2024/06/03 18:13

###Date: 2017/9/24

问题:在动态库中含有全局变量A,在应用程序中也使用了全局变量A,这个时候在应用程序中修改全局变量A的时候也会修改动态库中的A。如何不修改呢?

在创建动态链接库时,gcc/g++选项中添加编译选项

-Wl,-Bsymbolic.

其中Wl表示将紧跟其后的参数,传递给连接器ldBsymbolic表示强制采用本地的全局变量定义,这样就不会出现动态链接库的全局变量定义被应用程序/动态链接库中的同名定义给覆盖了!


原创粉丝点击