【发布时间】:2012-04-24 16:20:56
【问题描述】:
有时我会从不同的设计团队获得库。一个使用 gcc 3.x,另一个使用 gcc 4.x。如何确定这两个库是否兼容?我知道这是 libstdc++ 的问题,但是请您给我一个明确的答案吗?
【问题讨论】:
-
添加 C 标签以提高可见性,即使在 C 编程中也很重要
有时我会从不同的设计团队获得库。一个使用 gcc 3.x,另一个使用 gcc 4.x。如何确定这两个库是否兼容?我知道这是 libstdc++ 的问题,但是请您给我一个明确的答案吗?
【问题讨论】:
这是一个很好的起点
http://gcc.gnu.org/onlinedocs/gcc/Compatibility.html
本文讨论了不同工具之间的二进制兼容性(它也可以应用于库)。当不同的工具是不同版本的 gcc 时,这仍然适用。要检查的一项主要内容是应用程序二进制接口 (ABI) 一致性。
这个SO post 表示,由于 GCC 3.4.0 ABI 是向前兼容的。 IE。使用较旧版本创建的库可以与较新版本链接,并且应该可以工作。
【讨论】:
这个命令可能会有所帮助:
字符串 - YourProgram | grep GCC
【讨论】: