2011-06-22 21 views
2

我得到很多的警告,像這樣的:警告MSB8012:TARGETPATH(C: wxWidgets的-2.9.1 建造 wx291_msw_vc10 .. .. LIB vc_lib wxregex.lib)不匹配

Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ Microsoft.CppBuild.targets(1151,5): 警告MSB8012: TargetPath(C:\ wxWidgets-2.9.1 \ build \ wx291_msw_vc10 .. .. \ lib \ vc_lib \ wxregex.lib) 與鏈接器的OutputFile不匹配 屬性值 (C:\wxWidgets-2.9.1\lib\vc_lib\wxregexud.lib)。這可能會導致您的項目不正確地創建 。要更正此問題,請 確保$(OutDir), $(TargetName)和$(TargetExt) 屬性值與%(Link.OutputFile)中指定的值 匹配。

我該如何解決這個問題

+0

你應該接受一個答案,如果它可以幫助你 – fvu

回答

-1

udwxregexud.lib表示Unicode生成和調試版本。 wxregex.lib是一個非Unicode非調試構建的庫。

C:\wxWidgets-2.9.1\lib\vc_lib\wxregexud.lib是libs的正常位置。出於某種原因,您的目標路徑不正確。 >常規 - - >目標名稱配置屬性的名稱 - >圖書館(鏈接

+0

請不要混淆庫構建項目中的編譯器/鏈接器選項。你可能容易讓事情變得更糟,也沒有人會知道發生了什麼。要選擇版本(例如unicode版本),請將「解決方案配置」更改爲您需要的版本。這將自動調整所有這些棘手的編譯器/鏈接器選項,以便爲所選版本所需的那些選項自動調整。 – ravenspoint

+0

我從來沒有說過要改變庫構建項目中的選項!我的意思是在使用wxWidgets的項目中,設置這些選項以包含正確的庫(unicode,debug等),但是現在我意識到所涉及的錯誤是關於最初構建wxWidgets庫的。 – JohnPS

1

我選擇屬性解決方案中的每一個失敗的項目,然後更換配置屬性解決了這個問題) - >常規 - >輸出文件字段。我相信反向方法也應該工作太后通過將後者設置爲<從父項或項目默認繼承>雖然我不建議它,因爲所有配置將產生相同的輸出。

例如:
圖書館 - >常規 - >輸出文件 = ..\..\lib\vc_lib\wxmsw29u_core.lib
常規 - >目標名稱 = wxmsw29u_core