簡體   English   中英

當我使用VS2013進行編譯時,鏈接到使用VS2010編譯的靜態.lib嗎?

[英]Link to a static .lib compiled with VS2010 when I'm compiling with VS2013?

我有一個第三方庫,它是一個靜態的.lib文件,他們告訴我是使用VS2010編譯的。 我們在VS2013中開發應用程序,需要鏈接到該庫。

嘗試時,出現以下錯誤:

錯誤C1047:使用比其他對象更舊的編譯器創建了對象或庫文件'... / xxx.lib'; 重建舊對象和庫

這是否意味着我們將不得不使用VS2010編譯器來鏈接到它? (我們無法獲得該庫的重新編譯版本)

或多或少; 是。

通常,C ++程序的所有部分都需要編譯並與完全相同的編譯器(包括完全編譯器版本)鏈接。

通常,在構建不同部分時,您還需要使用相同的編譯器選項。

也有例外,但這是一般的經驗法則。

沒有標准化的C ++ ABI。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM