无法找到Visual Studio Platform 2015 Toolset ='v141'

cy_*_*0rg 31 c++ openframeworks visual-studio-2015

我正在尝试使用Visual Studio中的OpenFrameworks(一个使用C++的库)编译项目.构建设置为Release和X64,在项目属性中我将Platform Toolset设置为Visual Studio 2015(v140)

但是,每当我尝试构建项目时,我都会得到相同的错误(其中包括)

错误MSB8020找不到v141(Platform Toolset ='v141')的构建工具.要使用v141构建工具进行构建,请安装v141构建工具.

我知道v141来自MSVS 2017的新版本但我不想升级到新版本与OpenFrameworks不兼容.我已经尝试过多次从头开始重建项目,并且还查看了VCXPROJ文件并验证了所有内容都设置为V140 - 它确实如此.一切都很奇怪.

似乎在构建时,某些东西正在为v141设置一个要求,但我似乎无法找到它的来源.有没有人有想法?

小智 19

我有这样的问题.解决方案是:打开菜单"Project" - > Properties-> Configuration Properites-> General - 并选择platform toolset v140.


fia*_*iat 10

npm install克隆基于节点的项目后尝试同样的错误.它有一个npm依赖项,需要编译C++源代码.

我已经修改了我的VS2017安装包括Individual Components- >VC++ 2017 version 15.7 v14.14 latest v141 tools

但这没有帮助.

我连续应用了这些命令

  1. npm install -g node-gyp

  2. npm install --global --production windows-build-tools

第一个没有效果,但第二个没有效果,然后npm install命令成功完成.

  • 还要注意的是,在安装TeamCity机器时,我非常头疼。进行了上述操作,但还卸载/重新安装了“ Visual C ++构建工具”工作负载,并删除了VCTargetsPath`环境变量,其他使用谷歌搜索建议对其进行设置 (2认同)

Chr*_*ong 6

这是在一个答案的评论中解决的,但它对我有用。我安装了 v140 和 v141 构建工具,因此当我必须使用 v140 构建工具进行某些操作时,我将变量设置VCTargetsPath为 v140 构建工具的路径。在我的环境变量中删除这个变量最终为我解决了这个问题。

在此输入图像描述