如何为不同的架构构建 Visual Studio 个项目
How to Build Visual Studio Projects for Different Architectures
我正在编写一个批处理脚本,它将构建使用 Visual Studio 2010 制作的项目。我需要它来构建同一项目的四个变体:32 位调试、32 位发布、64-位调试和 64 位发布。
到目前为止,我想我已经弄清楚如何使用上次保存的设置构建项目:
"%MSBUILD_DIR%\MSBuild.exe" !PROJECTNAME!.vcxproj /t:Build^
我该如何修改它,以便它构建我需要的四种不同配置?
@echo off
setlocal
set _project=project.vcxproj
call :do_build "%_project%" Release Win32
call :do_build "%_project%" Debug Win32
call :do_build "%_project%" Release x64
call :do_build "%_project%" Debug x64
endlocal
exit /b 0
:do_build
setlocal
set _proj=%~1
set _conf=%~2
set _arch=%~3
set _code=0
if "%_arch%"=="Win32" (set _vc_arg=x86) else (set _vc_arg=amd64)
call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %_vc_arg%
msbuild /t:build /p:Configuration="%_conf%" /p:Platform=%_arch% %_proj% || set "_code=1"
endlocal & exit /b %_code%
我正在编写一个批处理脚本,它将构建使用 Visual Studio 2010 制作的项目。我需要它来构建同一项目的四个变体:32 位调试、32 位发布、64-位调试和 64 位发布。
到目前为止,我想我已经弄清楚如何使用上次保存的设置构建项目:
"%MSBUILD_DIR%\MSBuild.exe" !PROJECTNAME!.vcxproj /t:Build^
我该如何修改它,以便它构建我需要的四种不同配置?
@echo off
setlocal
set _project=project.vcxproj
call :do_build "%_project%" Release Win32
call :do_build "%_project%" Debug Win32
call :do_build "%_project%" Release x64
call :do_build "%_project%" Debug x64
endlocal
exit /b 0
:do_build
setlocal
set _proj=%~1
set _conf=%~2
set _arch=%~3
set _code=0
if "%_arch%"=="Win32" (set _vc_arg=x86) else (set _vc_arg=amd64)
call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %_vc_arg%
msbuild /t:build /p:Configuration="%_conf%" /p:Platform=%_arch% %_proj% || set "_code=1"
endlocal & exit /b %_code%