在 docker 图像中找不到 CMake 没有 CSharp 编译器
CMake no CSharp compiler can be found inside docker image
我正在尝试构建一个 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 构建工具安装程序安装了以下工作负载:
Microsoft.VisualStudio.Workload.MSBuildTools
Microsoft.VisualStudio.Workload.ManagedDesktopBuildTools
Microsoft.VisualStudio.Workload.VCTools
Microsoft.VisualStudio.Component.Windows10SDK.17763
如有必要,我可以提供完整的Dockerfile
。
无论如何,测试构建的图像我可以找到 msbuild
和 csc
编译器,CMake 不能。
知道问题出在哪里吗?
看来我缺少一个 Visual Studio 组件,特别是 Microsoft.Net.Component.4.TargetingPack
。
为了检测正确的 C# 编译器,CMake 编译了一些源代码。此编译针对我所缺少的 .NET Framework v4。
我正在尝试构建一个 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 构建工具安装程序安装了以下工作负载:
Microsoft.VisualStudio.Workload.MSBuildTools
Microsoft.VisualStudio.Workload.ManagedDesktopBuildTools
Microsoft.VisualStudio.Workload.VCTools
Microsoft.VisualStudio.Component.Windows10SDK.17763
如有必要,我可以提供完整的Dockerfile
。
无论如何,测试构建的图像我可以找到 msbuild
和 csc
编译器,CMake 不能。
知道问题出在哪里吗?
看来我缺少一个 Visual Studio 组件,特别是 Microsoft.Net.Component.4.TargetingPack
。
为了检测正确的 C# 编译器,CMake 编译了一些源代码。此编译针对我所缺少的 .NET Framework v4。