【问题标题】:TFS 2018 build fails: cannot open include file 'afxres.h'TFS 2018 构建失败:无法打开包含文件“afxres.h”
【发布时间】:2018-04-13 17:57:25
【问题描述】:

我们正在测试新的 TFS 2018 SP1 服务器。

我之前正在构建一个解决方案 (4.5),其中包含两个最初针对 2012 工具集编写的非托管 C++ 项目。

在新服务器上按原样构建该解决方案效果很好。但是,我们决定在下一个版本中重新定位到 4.7.1。

在项目中进行所有更改后,包括针对 4.7.1 框架和 2017 工具集 (141),这些项目无法构建,并出现标题中的错误。

我知道这与 C++ MFC/ATL redist 有关。

构建服务器没有安装 VS 2017,除非绝对必要,否则我不想安装它。

我确实安装了 VS 2017 C++ redist x86 和 x64,但它没有纠正这个问题。

谁能帮我解决这个问题?

【问题讨论】:

  • 它与 MFC/ATL redist 完全没有关系(redist 是最终用户所必需的)。它与缺少 MFC SDK(这是 Visual Studio 中使用 C++ 工作负载的桌面开发下的可选组件)有关。
  • @VTT 抱歉……我说错了。你是对的,它是 SDK,而不是 redist。我的问题仍然存在。有没有办法在不安装 VS 的情况下解决这个问题?
  • @Sam 能在本地成功构建项目吗?
  • @AndyLi-MSFT 是的,我可以。但是我安装了VS2017。如上所述,我确定这与在 VS 中安装 MFC/ATL 支持选项有关。据我所知,TFS 2018 安装中不存在该选项。

标签: c++ tfs tfsbuild


【解决方案1】:

您至少需要在构建服务器上安装Build Tools for Visual Studio 2017

Visual Studio 2017 构建工具

这些构建工具允许您构建基于 MSBuild 的本机和托管 无需 Visual Studio IDE 的应用程序。有 安装 Visual C++ 编译器和库、MFC、ATL、 和 C++/CLI 支持,以及 .NET 和 .NET Core 支持。

如果还是不行,恐怕你必须在构建服务器上安装 VS 2017。 (注意不要错过功能Microsoft Foundation Classes for C++。)


更新:

请仔细检查您是否错过了构建服务器上的 Microsoft.VisualStudio.Workload.VCTools 工作负载。详情请见Visual C++ build tools

如果错过了,只需尝试使用以下命令安装它:

vs_buildtools.exe --add Microsoft.VisualStudio.Workload.VCTools

【讨论】:

  • 是的,我在第一次设置服务器时安装了构建工具。我不想安装 VS,因为它像 50GB,这对于这个小问题来说似乎是一种浪费。
  • @Sam 您是否安装了Microsoft.VisualStudio.Workload.VCTools 包含的所有组件? (Visual C++ build tools)。查看更新的答案。
  • 我仔细检查并没有安装该组件。这解决了我的问题。谢谢。
猜你喜欢
  • 2011-04-03
  • 2016-05-27
  • 2011-01-17
  • 1970-01-01
  • 2019-05-08
  • 2022-11-16
  • 1970-01-01
  • 2018-11-08
  • 1970-01-01
相关资源
最近更新 更多