2012-07-31 65 views
0

我正在嘗試使用msbuild來構建一個Visual Studio 2005解決方案。我使用的批處理文件是:MSBuild,無法解析的外部和Visual Studio 2005

@ECHO OFF 

SETLOCAL 

set VSDIR=C:\Program Files (x86)\Microsoft Visual Studio 8 
set VCVARSALL=%VSDIR%\VC\vcvarsall.bat 

call "%VCVARSALL%" x86 &&^
msbuild path\to\my.sln^
    /v:normal^
    /p:Configuration=Release^
    /p:Platform=Win32^
    /t:SomeProject:Rebuild 

ENDLOCAL 

現在,SomeProject取決於SomeOtherProject這是所有罰款和良好的除與MSBuild的構建時,我得到無法解析的外部:

SomeObjFile.obj : error LNK2001: unresolved external symbol "private: static class SomeClass<class C> C::s_c" ([email protected]@@[email protected]@@@@A) 

的問題是,當我右鍵單擊Visual Studio 2005中的項目,然後選擇「重建」,但我沒有遇到任何未解決的外部問題。

有沒有人知道我可能會在我上面調用msbuild時做錯嗎?

謝謝!

+0

你爲什麼試圖使用MSBuild? VS2005 C++項目不使用MSBuild。只有2010年的。我不確定這是否是您的問題,但是通過devenv/vcbuild從命令行構建解決方案不是更簡單嗎? – jalf 2012-07-31 22:59:52

+0

其實,我很樂意打電話給devenv,並且完成它,但它似乎並沒有啓動*。我以前使用devenv.com,所以我可以輸出到控制檯,但無法啓動它。將嘗試與vcbuild。 – cheez 2012-08-01 02:29:56

+0

好的,現在我記得原因:當我需要構建特定項目時,依賴關係似乎不起作用。 – cheez 2012-08-01 02:46:18

回答

0

找出msbuild版本的問題:項目引用丟失。要解決這個問題,請右鍵單擊VS中的項目並將引用添加到缺少的庫中。保存所有項目,Bob是你的叔叔。

相關問題