我正在尝试自动化某个开源项目的构建过程。它将对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"
答案 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