【问题标题】:How to install build tools for v141_xp for VC 2017?如何为 VC 2017 安装 v141_xp 的构建工具?
【发布时间】:2018-09-06 02:22:57
【问题描述】:

我正在使用最新版本的 MSVC 2017 社区和平台工具集 v141,但我希望可执行文件仍可在 XP 上运行,因此我假设我需要使用 v141_xp 工具集,但结果是:

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

我在 MSVC 安装程序中没有找到类似的东西。有什么想法吗?

【问题讨论】:

    标签: visual-studio visual-studio-2017


    【解决方案1】:

    我不完全清楚您的问题是为 Windows XP 安装 C++ 工具,还是修改您的项目/解决方案以针对该平台。无论哪种方式,以下link 应该可以帮助您。

    以下是有关如何安装工具集的摘要:

    • 打开 Visual Studio 安装程序(工具 -> 获取工具和功能)
    • 选择使用 C++ 进行桌面开发
    • 摘要部分中选择Windows XP 对C++ 的支持
    • 点击修改

    【讨论】:

    • 这个名字在 VC 2019 里变了。现在是:“C++ Windows XP Support for VS 2017 v141”
    • VS2019 Preview 安装程序的当前版本我只在“单个组件”>“编译器、构建工具和运行时”>“C++ Windows XP 对 VS 2017 (v141) 工具的支持 [已弃用]”。它不再列在“工作负载”页面上。
    • 如果从命令行安装,要添加的组件是Microsoft.VisualStudio.Component.WinXPMicrosoft.VisualStudio.ComponentGroup.NativeDesktop.WinXP
    【解决方案2】:

    在 Visual Studio 2019 上,此选项已弃用,但您仍然可以选择它:)

    以下是有关如何安装工具集的摘要:

    • 打开 Visual Studio 安装程序(工具 -> 获取工具和功能)
    • 选择单个组件
    • 从“摘要”部分选择 Windows XP 对 C++ 的支持
    • 点击修改

    【讨论】:

    • 另外仅供参考,此选项在 VS 2022 Preview 4 中仍然可用。我已尝试在 VS 2017、VS 2019 和 VS 2022 中构建我的解决方案。所有构建都很愉快。
    • @Micdev42 被警告 VS 2022 不使用与 XP 兼容的 CRT。后端使用了一些 Vista+ 实现,例如 std::shared_mutex 在VS 2019 14.27 toolset version 之后使用 SRWLock... 虽然它在 XP 编译器中构建良好并针对 XP,但构建的应用程序实际上不会在 XP 上运行。并且线程安全静态初始化 /Zc:threadSafeInit 需要关闭,因为它使用 Vista+ 技术;或者静态 objs 将是 null 而没有 ctor 运行。
    【解决方案3】:

    我遇到了类似的问题,原因是不需要 VCTargetsPath 系统变量。删除后,VS 2017 现在可以看到 V141 工具集。 我首先拥有 VS 2017 社区,这可能是问题所在。

    【讨论】:

    • 删除 VCTargetsPath 系统变量对我有用!谢谢!
    猜你喜欢
    • 1970-01-01
    • 2017-09-25
    • 2019-04-02
    • 1970-01-01
    • 2017-10-10
    • 2017-03-23
    • 2022-07-05
    • 2022-01-05
    • 1970-01-01
    相关资源
    最近更新 更多