【问题标题】:Visual Studio Platform 2015 Toolset ='v141' cannot be found找不到 Visual Studio 平台 2015 工具集 ='v141'
【发布时间】:2017-09-04 21:04:15
【问题描述】:

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

但是每次我尝试构建项目时都会遇到相同的错误(以及其他错误)

错误 MSB8020 v141 的构建工具(平台工具集 = 'v141') 找不到。要使用 v141 构建工具构建,请安装 v141 构建工具。

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

似乎在构建时,某些东西设置了 v141 的要求,但我似乎无法找到它的来源。有人有想法吗?

【问题讨论】:

  • 有人问了和你类似的问题here
  • 谢谢,但正如我提到的,我尝试了这两个修复(我知道),即更改属性中的平台工具集并编辑 vcxproj 文件
  • 您是否也将目标平台版本修改为 8.1?
  • 我正在寻找类似的修复方法,但还没有尝试过,因为我怎么知道它们有效?它似乎想要一些未安装的东西。我正在寻找它,但我刚刚为 VS 2015 安装了构建工具,但什么也没做。我可以让它运行修复,但它需要很长时间。 MS在这里的游戏是什么?我什至一年都没有这个,现在是 2017 年?
  • 尝试彻底检查您的代码,以便所有 VS 生成的文件都消失了。或者,尝试在构建目录中的所有文件中对 141 进行基于文本的搜索,也许您可​​以找到类似的原因。

标签: c++ visual-studio-2015 openframeworks


【解决方案1】:

我有这样的问题。解决方法是:打开菜单“项目”->属性->配置属性->常规-选择平台工具集v140。

【讨论】:

    【解决方案2】:

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

    我已经修改了我的 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++ build tools工作负载并清除了VCTargetsPath环境变量,其他谷歌搜索建议设置它
    【解决方案3】:

    这在其中一个答案的 cmets 中得到了解决,但它对我有用。我安装了 v140 和 v141 构建工具,所以当我不得不使用 v140 构建工具时,我将 VCTargetsPath 变量设置为 v140 构建工具的路径。在我的环境变量中删除这个变量最终为我解决了这个问题。

    【讨论】:

      【解决方案4】:

      对于此错误以及类似的其他平台(例如 VS2013),通常会出现此问题,因为您在安装较旧版本的 VS 之后安装了较旧版本的 VS。据我观察,这将影响您的所有 Visual Studio C++ 项目,您必须手动设置它们以针对您尝试在其下构建项目的给定 VS 版本的特定工具集。

      【讨论】:

      • 是的,确实是这样,不久前解决了这个问题,因为我已经放弃了希望,所以没有检查这个问题的状态。
      • 确实这才是真正的原因。刚刚通过发布的解决方案修复了它,谢谢。
      【解决方案5】:

      如果有人有同样的问题.. 原因:当有人尝试打开在最新 VS 版本(VS2015 / 2017)上创建/构建的现有解决方案并尝试使用向后/旧版本的 VS 实例打开时。那么可能会出现这个错误。

      请尝试以下步骤。 右键单击项目-> 属性-> 配置属性。 将“目标平台版本”设置为支持的操作系统版本,即适用于 8.1 > Win7 和 10 Win10 将“平台工具集”设置为已安装的 Visual Studio 版本。

      重新构建并享受 :)

      【讨论】:

        【解决方案6】:

        从命令行构建时出现 v141 错误,但在 Visual Studio 中没有:

        找不到 v141 (Platform Toolset = 'v141') 的构建工具。要使用 v141 构建工具进行构建,请安装 v141 构建工具。或者,您可以通过选择“项目”菜单或右键单击解决方案,然后选择“重新定位解决方案”来升级到当前的 Visual Studio 工具。

        原来是因为我调用了错误的 vcvars,所以我使用了错误版本的 msbuild.exe:

        :: wrong (Visual Studio 2015)
        call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64 >NUL
        :: correct (Visual Studio 2017)
        call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvars64.bat" x64 >NUL
        

        不确定这是否可能是视觉工作室内部的错误,但我希望这对未来的搜索者有所帮助...

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-04-12
          • 1970-01-01
          • 2019-10-10
          • 2017-10-18
          • 2022-07-05
          • 2017-07-28
          • 2016-04-26
          相关资源
          最近更新 更多