Pau*_* D. 5 c++ legacy gcc abi
在这种情况下,我有一个使用最近的GCC(4.3.3)的C++代码库,但我需要链接一个使用GCC 3.2.3构建的旧库.没有更新版本的库,我不能没有它,它是封闭源,所以它无法重建.
这似乎是一个问题,因为GCC 4.3.3和3.2.3之间存在ABI不兼容性,所以我试图看看我的选择是什么来解决这个问题.
一些额外的细节:
我到目前为止尝试过:
我阅读了这个页面:http://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html这似乎表明可以在应用程序中混合使用C++ ABI版本来满足库之间不同的依赖关系.但是,这似乎并没有很好地工作,除非我遗漏了一些东西.
有任何想法吗?
好的,您的解决方法是:
您可以围绕 C 库编写一些 C++“包装器”代码,以便将其用作 C++,但该代码将在新编译器中构建。