2012-07-31 36 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是你的叔叔。

相关问题