簡體   English   中英

VS2013 C ++鏈接:致命錯誤LNK1104:無法打開文件'mfc110ud.lib'

[英]VS2013 C++ LINK : fatal error LNK1104: cannot open file 'mfc110ud.lib'

問題的背景(歷史):

  1. 升級(和微調)此50 + k行C ++項目從VC6到VS2008到VS2012后,一切都很好(全部在32位中)
  2. 升級到VS2013(Premium)以與第3方程序兼容,在(痛苦的)將所有代碼都微調為Unicode之后,一切都很好,但是:編輯並繼續(EnC)不再起作用。

    關於論壇上報告的EnC問題,存在一些帖子,其中一則表明VS2013'Ultimate'中的一項設置是可以的(即禁用新的IntelliTrace,僅在該版本中可用)。 注意:該問題顯然已由MSFT在VS2015中解決,但尚未針對該版本驗證第三方程序。

  3. 已安裝VS2013 Ultimate:一切正常,但EnC仍然無法正常工作,例如在微調對話框時會嚴重錯過它; 從而
  4. 在VS2012中打開該項目(以便能夠使用EnC),然后將“項目”>“屬性”>“配置”>“常規”>“平台工具集”更改為“ VS110”(VS2012的名稱):

    ->鏈接:致命錯誤LNK1104:無法打開文件'mfc120ud.lib'(注意:這是'VS2013'平台的MFC調試Unicode dll庫)

  5. 現在,當我使用相同的VS110平台工具集在VS2013 IDE中重新打開項目時,在構建時會彈出相同的錯誤,

  6. 當我將Platform Toolset更改為“ VS120”(VS2013的名稱)時,該錯誤更改為LINK:致命錯誤LNK1104:無法打開文件“ mfc110ud.lib”,這是VS2012的MFC調試Unicode庫。

我發現錯誤的切換和令人困惑的環境。 最后三個步驟是可重復的。 在進行任何更改之前,IDE將關閉。 操作系統重啟會改變什么,如果是,為什么? 是否應該刪除配置文件(如.vcxproj,.vcxproj.user,.suo,.sdf,.sln或其他文件)?

我們將不勝感激在理解和修復此行為方面的所有幫助。

問題是“ CharSet”。 每個字符集將構建自己的* .dll。 您必須在“項目->屬性-> ConfigurationProperties->通用-> ProjectDefault-> CharSet”中選擇“ MBCS”而不是“ Unicode”。

我正在使用VS2012,同時嘗試將平台更改為Win32。該錯誤已得到解決。

暫無
暫無

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

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