当我用VS2013编译时,链接到用VS2010编译的静态.lib?

时间:2016-07-05 15:14:15

标签: c++ visual-studio visual-studio-2010 visual-c++ visual-studio-2013

我有第三方库,它是一个静态的.lib文件,他们告诉我是用VS2010编译的。我们在VS2013中开发我们的应用程序,需要链接到这个库。

当我们尝试时,我们会收到此错误:

  

错误C1047:对象或库文件' ... / xxx.lib'是用。创建的   比其他对象更旧的编译器;重建旧物体和   库

这是否意味着我们必须使用VS2010编译器链接到它? (我们无法获得该库的重新编译版本)

1 个答案:

答案 0 :(得分:4)

或多或少;是

通常,C ++程序的所有部分都需要编译并与 exact 相同的编译器链接(包括精确的编译器版本)。

通常在构建不同的部分时也需要使用相同的编译器选项。

有例外,但这是一般的经验法则。

没有标准化的C ++ ABI。

相关问题