2015年5月27日 星期三

C++單元測試(8) - 再用VS2005先試一下: 專案檔轉換失敗

終於又再度繼續了!
接續上...一篇,我們試著使用了VC6和VS2010編譯之後,我們這次用了VS2005編編看。
依之前的經驗,只要將手上的VS升級到最新的版本就可以編譯,但是會寫文章就是「事情沒這麼順利」啦~

這一次,我們從頭來一次

1. 下載 source code

下載CppUnit
我是用clone下來的,所以...資料夾沒有版號。
直接就是cppunit出現在我的硬碟中。(也不用解壓縮唷)

2. 開啟專案檔

打開cppunit\srcCppUnitLibraries.dsw進行專案檔的轉換
VS2005開啟之後,會提醒「要轉換專案檔」格式與目前的VS版本不合。

提醒「要轉換專案檔」格式與目前的VS版本不合
 按下Yes後,出現了第二個對話框,警告你是否要替代已存在的檔案。

警告你是否要替代已存在的檔案
結果竟然給我出現錯誤!
程式設計師不怕警告,只怕錯誤呀!XD
我們來看看它寫什麼...(我把文字貼出來)


上圖內容如下
「The following error has occurred during XML parsing:

File: D:\cppUnitTest\cppunit\src\DllPlugInTester\DllPlugInTester.vcproj
Line: 8
Column: 2
Error Message:
'9.00' 違反 '7.00 7,00 7.10 7,10 8.00 8,00' 的 'enumeration' 條件。
屬性 'Version' 和與值 '9.00' 的剖析失敗。

The file 'D:\cppUnitTest\cppunit\src\DllPlugInTester\DllPlugInTester.vcproj' has failed to load.」
意思是,版本錯誤!

沒關係,我們相信工具的強大!
按下OK之後就會出現第二個專案檔給你再一次相同的問答。

最後,終於按完所有的Yes和OK之後,出現了....不能編譯的專案檔!?

什麼?!><
崩潰!( ▔皿▔) 這?說好的強大工具呢?

好!這篇不是要抱怨Visual Studio,所以就趕快回到正題吧!

修改專案檔

將cppunit/src底下所有的.vcproj找出來
總共有8個。

  1. cppunit.vcproj
  2. cppunit_dll.vcproj
  3. qttestrunner_dll.vcproj
  4. TestPlugInRunner.vcproj
  5. TestRunner.vcproj
  6. DllPlugInTester.vcproj
  7. DllPlugInTesterTest.vcproj
  8. qttestrunner.vcproj

全部都把它用文字編輯器打開。在此我用Sublime Text 2
然後,依照下列兩個原則[1]
  1. Version="9.00"改成Version="8.00" (數字大於8.00,才改成8.00)
  2. TargetFrameworkVersion="**" 刪除(不管數字是什麼!刪!)
這樣一來,你的專案檔開啟就跟新買的一樣滑順囉~(咳!別想歪!)

參考資料

 [1] VS2008工程转成VS2005工程的方法

沒有留言:

張貼留言