找不到 Visual Studio 2008 的构建工具(平台工具集 = 'v90')

The build tools for Visual Studio 2008 (Platform Toolset = 'v90') cannot be found

我正在尝试在 vs2017 上构建项目 c++ 但出现错误: "The build tools for Visual Studio 2008 (Platform Toolset = 'v90') cannot be found " 导航后,我必须下载VS 2008 我已经安装了,但问题仍然存在。 有什么建议吗?

这些项目以 v90 平台工具集为目标。解决方案是使用 VS2008 打开 .sln 文件(即使用正确的工具),或者花一些时间更新项目以针对最新的平台工具集(即 VS2017)。为此,只需右键单击每个项目,然后转到 Properties,然后查看 General | Windows SDK Version。您可能需要在项目升级后修复编译/链接器错误。

你需要:

  • 一个 MSVC 9.0 编译器工具链
    • https://wiki.python.org/moin/WindowsCompilers 列出具有它的产品:
      • VS 2008,"Visual C++" 功能和 "x64 compilers and tools" 子功能
        • Express 版只有 x86 编译器
        • 请在 VS2008 上安装 SP1——在 vanilla VS2008 安装程序中,包括 x64 编译器在内的许多功能的安装都已损坏
      • WinSDK 6.1
      • WinSDK 7.0
      • "Visual C++ Compiler for Python 2.7" 包裹
  • 上述工具链的 MsBuild 4.0 工具集配置文件。 (这些是目录 c:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\<arch>\PlatformToolsets\v90\,其中包含 .props.targets 文件)

    • 我知道的唯一具有此软件包的产品是 VS 2010("Visual C++" 功能和 "x64 compilers and tools" 子功能)。
    • (WinSDK 7.1 技术上也有,但它的设置是 and broken on an x64 system。)
      • (如果您直接安装 <GRMSDK_EN_DVD.iso>\Setup\vc_stdx86\vc_stdx86.msi,您可以绕过有问题的安装程序。尽管名称如此,但它具有适用于所有 3 个平台的工具集文件。)


    "Visual C++ Compiler for Python 2.7" 包不受这些工具集配置文件的支持。因此,如果您使用它,则需要在 .props 中指定的注册表值之一中手动指定其位置,或者修改 .props 以同时在 HKLM\Software\Microsoft\DevDiv\VCForPython.[=19= 中查找]

无需在Visual Studio中打开它,就可以从命令行升级项目文件。我 运行 遇到了同样的问题,并在 Visual Studio (https://docs.microsoft.com/en-us/visualstudio/ide/reference/upgrade-devenv-exe?view=vs-2017) 的 Microsoft 文档中找到了另一个解决方案。

步骤如下:

  1. 为您的 Visual Studio 版本打开开发者命令提示符,例如'Developer Command Prompt for VS 2017'.
  2. 导航到项目文件的目录。
  3. 执行以下命令:devenv myproject.sln /upgrade