Visual Studio 2012 未能检测到 Visual Studio 2008 构建工具

Posted

技术标签:

【中文标题】Visual Studio 2012 未能检测到 Visual Studio 2008 构建工具【英文标题】:Visual Studio 2012 failing to detect Visual Studio 2008 build tools 【发布时间】:2012-10-24 21:45:57 【问题描述】:

我正在尝试使用 Visual Studio 2012 构建面向 .NET 3.5 的 C++ CLI 应用程序。

通过安装 Visual Studio 2008 并指定 v90 平台工具集,我已经在一台机器上完成了这项工作。

现在我在一台新机器上尝试这个,我已经安装了 Visual Studio 2008,然后是 Visual Studio 2012。

现在我得到了这个令人难以置信的令人沮丧的错误:

错误 81 错误 MSB8020:Visual Studio 2008 的构建工具 (平台工具集 = 'v90')找不到。使用 v90 构建 构建工具,单击项目菜单或右键单击 解决方案,然后选择“更新 VC++ 项目...”。安装视觉 Studio 2008 使用 Visual Studio 2008 构建 工具。 C:\程序文件 (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Platform.targets 43 5 WinApiWrapper (Visual Studio 2008)

为什么 Visual Studio 2012 不能找到 Visual Studio 2008。有什么办法可以帮助它吗?

【问题讨论】:

【参考方案1】:

事实证明,您还必须安装 Visual Studio 2010

安装 Visual Studio 2010 后,Visual Studio 2012 能够检测到 Visual Studio 2008 构建工具。

这看起来很疯狂,但是你去吧。

【讨论】:

我也有类似的问题,它是使用x86模式构建的,但不是基于x64构建的,你知道(记得)还需要安装什么吗? @ST3 如果您使用 Visual C++ x64,您可以在 2010 安装时在 Visual C++ 下添加“X64 编译器和工具” 这也是让VS2015用VS2008构建老项目的关键。出于某种奇怪的原因不得不安装 VS2010。 见my answer了解这个“奇怪的原因”。【参考方案2】:

我遇到了完全相同的问题,但我安装了Windows SDK 7.1(或the web installer version),它也可以工作。

我记得我也把它安装到了原来的电脑上。

请记住,您应该首先卸载任何版本的 Visual C++ 2010 可再发行组件,否则 Windows SDK setup will fail。

我知道这不是完美的解决方案,因为 Windows SDK 非常庞大,但它是另一种选择。

【讨论】:

这使我不必添加我永远不会使用但知道会以某种方式妨碍的 VS 的快速版本。谢谢! 非常感谢您指出 VC++2010 可再发行组件导致安装程序失败。这对微软来说似乎是一个巨大的骗局,但这真的是什么新鲜事吗? 在 x86 ISO 中,在 x64 系统上安装失败,结果显示“找不到 WinSDK_amd64”。 x64 ISO 版本有效,但只安装了 x64 的工具链文件。【参考方案3】:

在下载任何内容之前,请尝试转到项目属性 -> 配置属性 -> 常规,然后将项目的 平台工具集 更改为 Visual Studio 2012 (v110)

【讨论】:

神奇、智能、简单!【参考方案4】:

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

除了 VS 2008 中存在的 MSVC 9.0 工具链(请安装 VS 2008 SP1,否则 x64 编译器会损坏)您还需要此工具链的 MsBuild 4.0 工具集配置文件,以便 MsBuild 可以找到它。

它们在 Visual Studio 2010、C++ x86 和 x64 功能以及其自己的工具链中谨慎地呈现。 它们也存在于 WinSDK 7.1 中,但其安装程序在 x64 系统上已损坏您可以只安装工具集文件,直接运行 <GRMSDK_EN_DVD.iso>\Setup\vc_stdx86\vc_stdx86.msi(尽管名称如此,但它包含适用于所有 3 个平台的工具集文件)。

【讨论】:

以上是关于Visual Studio 2012 未能检测到 Visual Studio 2008 构建工具的主要内容,如果未能解决你的问题,请参考以下文章

在 VS 2012 (C++) 中编译 Visual Studio 2010 项目:错误 LNK2038:检测到“_MSC_VER”不匹配:值“1600”与值“1700”不匹配

Visual Studio2005问题:未能正确加载包“Visual Studio Macros Package”

Visual Studio 2017 添加引用报错

未能正确创建Visual c# 20xx,因此未能打开工程xxx,请重新安装Visual studio

Visual Studio 未能加载文件或程序集

未能为 Visual Studio 2017 构建 boost 1.68