我已經發送了一個示例應用程序用於新鑄造的SDK ,而且我無法編譯它 - 由於ATL的原因,它在Visual Studio Express中根本無法編譯,而且這似乎是微軟仍然可用的唯一VS 2010版本。所以我試圖在VS 2012 Professional中編譯它,但它給我錯誤LNK2038。從我可以收集的信息從this thread,問題歸結爲嘗試在2012版中使用爲2010年編譯的.lib文件。由於我不是編譯.lib的人,而且我沒有編寫它的代碼,並且VS 2010無法訪問,所以除非原作者重新編譯它,否則我不確定該怎麼做。有什麼建議麼?我錯過了一些基本的東西?非常感謝您的幫助。在VS 2012(C++)中編譯Visual Studio 2010項目:錯誤LNK2038:爲'_MSC_VER'檢測到不匹配:值'1600'與值'1700'不匹配
3
A
回答
5
庫文件不能在不同版本的編譯器之間重複使用。您需要執行以下操作之一:
- 編譯您的項目時使用的編譯器用於創建您擁有的庫文件。
- 從代碼所有者處獲取新的庫文件,使用您現在使用的相同編譯器進行編譯。
- 獲取庫的源代碼,並自己編譯它們的新版本。
- 重寫你自己的代碼而不依賴於你無法控制的庫,因爲你的編譯環境不允許使用它們。
+0
謝謝你。隨着更多的狩獵,我發現[Visual Studio 2010專業版CNet](http://download.cnet.com/Microsoft-Visual-Studio-2010-Professional/3000-2212_4-10618634.html),所以你的選項1是畢竟可能。 – Oolong
相關問題
- 1. 錯誤LNK2038:爲'_MSC_VER'檢測到不匹配:值'1600'與moc_testqt5.obj中的值'1700'不匹配
- 2. 錯誤LNK2038:錯誤檢測'_MSC_VER':值'1600'與CppFile1.obj中的值'1700'不匹配
- 3. C++ OGRE3D VS2013:錯誤LNK2038:爲'_MSC_VER'檢測到不匹配:值'1700'與值'1800'不匹配
- 4. 錯誤LNK2038:檢測到不匹配
- 5. 錯誤檢測到LNK2038不匹配
- 6. 編譯從Visual Studio 2010年至2012 RC結果的MFC應用程序在LNK2038
- 7. 鏈接器錯誤LNK2038:檢測到'RuntimeLibrary'不匹配
- 8. 編譯Firefox插件在Visual Studio 2012
- 9. 無法調試我的c + +程序:錯誤LNK2038:檢測到不匹配
- 10. 'operator =='不匹配C++編譯錯誤
- 11. _iterator_debug_level值'0'與值'2'不匹配
- 12. 不匹配:「1」值不匹配值「0」 MSVCRTD.LIB
- 13. 不能在Visual Studio編譯項目2012
- 14. 致命錯誤不能在編譯VS 2012的C++項目
- 15. 不匹配檢測
- 16. 如何在Visual C++ 2012中使用Visual C++ 2010開發解決方案?
- 17. VB6:編譯錯誤類型不匹配
- 18. mysql查找與匹配值不匹配的匹配鍵
- 19. 編譯錯誤匹配器
- 20. 錯誤編譯的Visual Studio C++項目 - 錯誤與cl.exe時
- 21. 的Visual Studio 2010項目到Visual Studio 2012
- 22. PDB與映像不匹配錯誤
- 23. 不匹配在Excel VBA錯誤13 2010
- 24. 編譯時user.agent值與運行時user.agent值不匹配
- 25. C++類型/值不匹配
- 26. C++中的錯誤返回值與函數類型不匹配
- 27. C++錯誤:'operator- ='不匹配'
- 28. Visual Studio 2012 C++空項目錯誤?
- 29. C++錯誤:'operator ='不匹配
- 30. 試圖在Visual Studio 2010中編譯Tessnet2(Visual Studio 2008 C++)項目
http://www.microsoft.com/en-us/download/details.aspx?id=2890 –
如果您擁有VS2012的有效RTM許可證,那麼您還有許可證可使用任何先前版本的VS.因此,請嘗試在VS2010的試用版中輸入您的許可證號碼。從來沒有嘗試過。 –