我正在尝试构建一个 docker 镜像来为我组织的一个项目设置 CI/CD。 该项目主要是 Windows C++ (MFC),但也有一些 C# 组件。
实际上,这些项目都是手工管理的,但我正在迁移到 CMake 并自动化构建过程。
本地一切正常,但在 CI/CD 服务器上构建时,CMake 说 No CMAKE_CSharp_COMPILER could be found
。
我正在构建的 docker 映像基于 mcr.microsoft.com/windows/servercore:ltsc2019
,并且我使用 Visual Studio Build Tools 安装程序安装了以下工作负载:
Microsoft.VisualStudio.Workload.MSBuildTools
Microsoft.VisualStudio.Workload.ManagedDesktopBuildTools
Microsoft.VisualStudio.Workload.VCTools
Microsoft.VisualStudio.Component.Windows10SDK.17763
如有必要,我可以提供完整的 Dockerfile
。
无论如何,测试构建的镜像我可以找到 msbuild
和 csc
编译器,而 CMake 不能。
知道可能是什么问题吗?
答案 0 :(得分:0)
看起来我缺少一个 Visual Studio 组件,特别是 chromedriver
。
为了检测正确的 C# 编译器,CMake 编译了一些源代码。此编译针对 .NET Framework v4,这是我所缺少的。