首页 > 解决方案 > 如何将 CMAKE 用于自定义编译器和自定义操作系统?

问题描述

我想将 CMAKE 用于一个用 C++ 编写的非常大的项目。但是这个项目没有使用“现代编译器”,也没有使用流行的编译器,而是用于一个独特的操作系统,出于实际目的,假设我制作了它,所以我可以访问它的几乎所有源代码(但我不能修改它,我只有对我的项目的修改权限)。让我们称这个操作系统为 OSreally。

我的项目可以编译 Windows 并且可以在 Windows 和 OSreally 中运行。

我需要做什么来为这个项目实施 CMAKE?所以我可以得到所有的CMAKE“好处”。

标签: c++cmake

解决方案


从某种意义上说,你的问题并不难回答。CMake 具有极强的可扩展性,几乎所有内容都可以更改。例如,要使用您的自定义编译器,您可以SET(CMAKE_CXX_COMPILER /path/to/compiler)在顶级构建文件中。然而,即使像这样的一些技巧可以让你为你奇怪的操作系统编译代码,也可能存在各种系统函数和标准库的问题。

如果没有人在您的操作系统上实现标准库,您可能需要花费一些时间来构建它并可能对其进行修改以适应系统上的任何不同之处。基本上任何您想要导入的库也是如此。无论如何,如果您的系统有一个符合标准的 C++ 编译器,那么正确的方法是在您的系统中简单地设置上述变量CMakeLists.txt并修复您遇到它们时出现的任何问题。


推荐阅读