2016-06-20 60 views
0

我有使用C++ 03编译但不使用C++ 11的食人魔渲染代码。是否有可能将使用C++ 11编译的库链接到需要使用C++编译的代码03

我有子弹物理学代码编译与c + + 11但不是与c + + 03。

现在我想要连接它们。是否可以用C++ 11编译项目符号代码,并从要用C++ 03编译的食人魔代码调用结果库。

我的gcc版本4.8.4

OGRE被构建为静态的。子弹也构建为静态。

+0

将子弹库建成一个静态或共享库?如果它是一个共享库,那么它应该工作得很好,除非你想调用某个函数或者使用一些依赖于特定C++ 11功能的类。如果它是一个静态库,那么它是不可能的,除非你链接到一个具有库所需的C++ 11功能的标准库。 –

+0

请参阅上面的修改 – user27665

回答

0

是的,只要您使用相同的libstdC++ ABI,并且随着新的C++ 11 ABI被引入到g ++ 5.1中(请参阅using dual abi),它就可能适用于您。

编辑:见this answer一个更完整的答案,特别是对于ABI不兼容的G ++ 4.7.0和g ++ 4.7.1

相关问题