6 c++ linux compiler-construction compatibility
我正在研究一个跨越几个不同组织的项目的redhat 5.2.每个组织都提供使用各种版本的g ++编译的库.目前,这些版本包括4.1.1,4.1.2和4.3.1.我试图使用4.1.2将所有库链接到一个可执行文件.如果有的话,我可以期待这样做的问题是什么?顺便说一下,有没有办法告诉每个编译器版本构建到哪个ABI?
GCC(GNU编译器集合)定义版本号和兼容性.
4.1.1和4.1.2之间的G ++库应该是兼容的; 与最新的链接.
4.1.x和4.2.x之间的G ++库不兼容; 你需要重新编译一些东西.
3.xy和4.pq之间的G ++库不兼容; 你需要重新编译一些东西.
在您的方案中,使用4.3.1构建的代码与其余代码不兼容.
您必须重建当前使用4.3.x编译的代码,因此它使用4.1.x,或者您需要重新编译当前使用4.1.x编译的代码,因此它使用4.3.x代替.