将使用不同GCC版本编译的源生成的对象链接到共享库是否安全?
我假设没有,但是如果使用过的GCC在代码生成和优化改进方面没有区别?是否有信息知道哪个GCC编译器不向后兼容?
我的问题也是关注二进制文件,我查了一下
https://gcc.gnu.org/onlinedocs/gcc/Compatibility.html
根据我的理解,只要符合相同的ABI
,不同的GCC版本就是兼容的答案 0 :(得分:1)
因此,在对网络进行研究并阅读几篇GCC发行说明之后,如果没有ABI变化,GCC似乎是向后兼容的。 一般来说,这将在发行说明中说明。
我还使用不同的GCC编译器和GCC连接器(来自不同版本的GCC的不同含义)进行了一些实验,并且当它不兼容时(不同的ABI版本)我遇到了链接器错误。