“_MSC_VER”的不匹配項


 

 

近些年來vs更新步伐加快,深刻的感受到了技術成長學習的重要性。 

另一方面,版本的更換,也帶來了許多的問題。今天用2019打開以前2010的工程時就碰到了一個:

檢測到“_MSC_VER”的不匹配項: 值“1600”不匹配值“1900”(Clock.obj 中) 

照例拜訪度娘,原因是:

visual studio 2010(1600)生成的東西和visual studio 2015(1900)生成的東西“不匹配”。 多是pdb文件、庫文件、包含文件等。

得到如下幾種解決方案:

1.清理解決方案

重新生成

2.更改平台工具集

項目->右鍵屬性->配置屬性->常規->平台工具集。改成合適的工具集。

MS VC++ 14.0 _MSC_VER = 1900 vs2015
MS VC++ 12.0 _MSC_VER = 1800 vs2013的編譯器他的平台是v120
MS VC++ 11.0 _MSC_VER = 1700 vs2012的編譯器他的平台是v110
MS VC++ 10.0 _MSC_VER = 1600 Visual C++ 2010
MS VC++ 9.0 _MSC_VER = 1500 Visual C++ 2008
MS VC++ 8.0 _MSC_VER = 1400 Visual C++ 2005

3.更換附加庫

如果原來附加了visual studio 2010編譯的庫文件(.lib),你現在想用visual studio 2019的平台工具集,就需要把這個庫文件變成VS2019的。

 

另外,與版本有關的問題還有

1.引用庫文件

由於版本迭代,WTL等也需要更新到對應的版本,因為底層函數可能做了安全性、效率、策略上的調整。

2.lib庫debug與release版引用也要對應


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM