生成无法找到平台工具集v141。

3

我正在尝试将一个使用VS2013编写的C++解决方案转换为使用VS2017,并在使用TFS 2010的构建服务器上进行构建,但是构建无法找到平台工具集。 我一直收到以下错误消息:

error MSB8008: Specified platform toolset (v141) is not installed or invalid.

我已在构建服务器上安装了VS2017(不仅仅是Build Tools),并检查了平台工具集v141是否已安装。
我已将.proj文件更新为使用ToolsVersion 15.0,并且解决方案中的项目文件都已更新为使用ToolsVersion 15.0。
我还在构建定义中的MSBuild参数中添加了/p:VisualStudioVersion=15.0。
有人可以给我一个提示,还需要检查什么吗? 我已经没有更多的想法了。
我看到错误消息包含这个内容:
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp.Win32.Targets(511,5): error MSB8008: Specified platform toolset (v141) is not installed or invalid.

路径中包含 v4.0,难道不应该是 v15.0 吗?有指向错误的参考吗? 然而,在另一个使用 VS2015 构建的项目中似乎没有这个问题,所以我不确定这是否是一个问题。 希望有人能帮助我。 敬礼, Mattias
1个回答

1

构建无法找到平台工具集v141

据我所知,您可能需要修改构建模板以指向MSBuild版本15.0。有两个参数需要设置,包括ToolPathToolversion,编辑模板将msbuild活动的ToolPath更改为"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe"。

有关更多详细信息,请查看BuildActivity ignores ToolsVersion线程了解更多详细信息。

希望能对您有所帮助。


将ToolPath添加到构建过程模板中,并在项目文件中覆盖属性MSBuildExtensionsPath解决了该问题。 - Ernis

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接