使用VS2010的msbuild进行构建时,是否可以从命令行设置平台工具集?

sas*_*alm 8 c++ msbuild command-line visual-studio-2010

当我从命令行使用msbuild构建VS2010时,是否可以从命令行将平台工具集更改为v90(即Visual Studio 2008工具链),而无需编辑vcxproj文件?

我目前在我的构建脚本中使用以下命令行:

mysystemf("msbuild %s.vcxproj /t:rebuild /p:configuration=release,platform=%s", prjname, platform);
Run Code Online (Sandbox Code Playgroud)

Jic*_*hao 20

是的,您可以在不更改vcxproj文件的情况下设置PlatformToolset.

如果您打开vcxproj文件,您将看到有一个PlatformToolset属性.对于visual studio 2012,它是v110; 对于VS2010,它是v100; 对于VS2008,它是v90.

您可以使用/p:PlatformToolset=v110/v100/v90更改工具链来覆盖此属性.

注意:有时,msbuild失败并出现错误Unsupported platformtoolset value,主要是因为您没有指定VisualStudioVersion.