我们有一个包含一些VC++项目的Visual Studio解决方案,我们目前已从VS2010升级到Visual Studio 2012.在此过程中,我们还将VC++项目提升为PlatformToolset v110.
在我们的构建服务器(Jenkins)上,我们希望使用MsBuild构建此项目,而无需安装VS2012.但我无法让它工作,我认为这是因为文件夹C:\ Program Files(x86)\ MSBuild\Microsoft.Cpp\v4.0\V110必须存在.
此文件夹及其内容是在安装VS2012期间创建的,但据我所知,它不会包含在Windows SDK 7.1或Windows SDK 8.0中?
是否有任何其他SDK或安装包可以帮助解决此问题?
我正在开发一个命令行应用程序,它创建一个完整的Visual Studio 11解决方案,由单个VC++项目组成,并尝试使用MSBuild最终编译它.
我面临的问题很奇怪.
如果我在Visual Studio 11中执行我的命令行程序,它的工作原理; 如果我在开发环境之外启动它,它会抛出错误:
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp.Win32.Targets(511,5): error MSB8008: Specified platform toolset (v110) is not installed or invalid. Please make sure that a supported PlatformToolset value is selected. [f:\ABC.vcxproj]
Run Code Online (Sandbox Code Playgroud)
我正在使用的命令如下:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe f:\snake\W9A30040.vcxproj /property:PlatformToolset=v110;Configuration=Debug /v:quiet
Run Code Online (Sandbox Code Playgroud)
但我觉得PlatformToolset = v110被忽略,MSBuild使用v100(Visual Studio 2010).
您对如何告诉MSBuild编译v110 Platform Toolset有什么建议吗?
我正在使用Atlassian Bamboo设置构建服务器.MSBuild包含在.NET框架中,所以我相信我至少可以在没有VS2010的情况下构建.NET应用程序.
我们主要用C++开发 - 我是否需要在构建服务器上安装Visual Studio来构建.vcxproj C++项目,或者只能用MSBuild完成?