[other] 问一个关于动态依赖库的问题
Tofloor
poster avatar
潜水7年
deepin
2022-08-11 01:00
Author

比如我现在想编译一个软件A,使用的编译器是GCC9,但是这个A依赖一个动态库B,B可以通过官方的源安装,但是系统自带的GCC是8.3,那么A的编译和运行过程中会出现依赖问题吗,比如链接时中函数找不到这种情况?

衍生问题:

1.从apt的源里面安装的软件是不是都是使用系统版本GCC编译的?

2.如果GCC8和GCC9都使用的是相同的C++版本标准,比如C++11,那么他们编译出来的依赖库B能互相通用吗?

Reply Favorite View the author
All Replies
ti-ji
deepin
2022-08-11 05:17
#1

https://github.com/wxWidgets/wxWidgets/releases/tag/v3.2.0

提供了各个版本的编译器的编译结果。

或许在 abi 相同的情况下,可以尝试。

https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html

链接不同编译器编译的库,不认为总是正确。

目标:允许多个不兼容的 ABI 同时共存。

文章最后:不建议混合使用 C++ ABI。

有点复杂,我理解不能。

sad

Reply View the author