MSbuild错误:找不到用于v140的构建工具(Platform Toolset ='v140')

Ara*_*ash 11 c++ msbuild cross-platform tfsbuild visual-studio-2015

我有一个包含大量项目(C ++和C#)的解决方案。我已将该解决方案升级到VS2015,因此大多数工具集的工具集版本现在都设置为V140,但是少数项目仍需要保留在V110中(第三方库等)。当我在Visual Studio 2015中构建解决方案时,它可以很好地构建,但是在TeamFoundationServer尝试构建它时,它失败并显示以下错误:

C:\ Program Files(x86)\ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Microsoft.Cpp.Platform.targets(44):找不到v140的构建工具(Platform Toolset ='v140')。要使用v140构建工具进行构建,请单击“项目”菜单或右键单击解决方案,然后选择“更新VC ++项目...”。安装v140以使用v140构建工具进行构建。

我试图将VisualStudioVersion或正确的MSBuild版本的路径指定为构建参数,但由于其余项目(V110中的项目)会遇到麻烦,因此无法正常工作。

任何帮助将不胜感激。

Jac*_*son 20

我遇到过同样的问题。此解决方案中提供的步骤帮助我解决了问题。重复此处的步骤以供将来参考。

如果您尝试构建Win32“桌面”应用程序,则最简单的获取v140 Platform Toolset的方法是通过Visual Studio Installer(请参见下面的图像,以获得步骤“ 3”和“ 4”的图示)。 '):

  1. 从开始菜单启动“ Visual Studio安装程序”。
  2. 为已安装的Visual Studio 2017实例选择“修改”。
  3. 在工作负载选择器的“摘要”窗格下,单击“使用C ++进行桌面开发”扩展器(如果已折叠)
  4. 检查“ VC ++ 2015.3 v140工具集(x86,x64)”可选功能。

步骤“ 3”的图示。 和“ 4”。

  • 我没有找到“VC++ 2015.3 v140工具集(x86,x64)”,也没有搜索框可以搜索。您可以转到“单个组件”并手动搜索,它应该位于“编译器、构建工具和运行时”类别下 (3认同)

Pat*_*SFT 6

v140的构建工具是VS2015的平台工具集。

如果使用的是TFS2015,则必须确保构建计算机上的构建环境与本地开发人员计算机相同。您应该在构建计算机上安装VS2015。

如果您使用的是TFS2013或TFS2012,则很可能会调用MSBuild 12.0。您需要将构建模板设置为指向MS Build 14.0版本。有关详细信息,请检查:TFS 2013 Building .NET 4.6 / C#6.0