从命令行构建Visual Studio 2008解决方案

时间:2011-11-21 17:00:39

标签: c++ compiler-construction command-line

我正在尝试自动化某个开源项目的构建过程。它将对SVN目录进行更新,使用CMake获取.sln文件,并构建它。我可以手动成功完成此操作,并从批处理脚本执行svn和cmake,但现在我需要构建解决方案。

快速谷歌搜索显示:

devenv /build release /project <projname> <solutionfile>.sln

但是,它使用最新版本的visual studio(Visual Studio Professional 2011),而生成的.sln文件适用于Visual C ++ Express 2008.我的计算机上安装了两个版本。我可以用于Visual C ++ Express 2008的devenv吗?或者是否有命令行参数来指定要使用的版本?

更新

我尝试使用msbuild,但这似乎并不像直接构建.vcproj文件,我不想通过构建.sln文件来构建所有项目文件。我最终使用了这个:

"C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\vcbuild.exe" <myproj>.vcproj "Release|Win32"

2 个答案:

答案 0 :(得分:7)

我认为您使用错误的工具来构建它。您不应该尝试从命令行驱动IDE,而应该使用msbuild。

msbuild.exe projectname.proj /property:Configuration=Release

要为特定版本的MSVC设置环境,您需要从该特定版本调用vcvar.bat文件。这将设置构建工具所需的必要环境变量。

答案 1 :(得分:2)

对于Visual Studio Express 2008,IDE称为VCExpress.exe。如果安装了两个版本,也应该指定程序的完整路径:

C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\VCExpress.exe /build release /project <projname> <solutionfile>.sln