gpt4 book ai didi

CMake 多个工具链和目标平台

转载 作者:太空狗 更新时间:2023-10-29 14:59:47 29 4
gpt4 key购买 nike

我正在从普通 make 更改为 CMake 作为项目的构建系统。该项目应该在不同的嵌入式 Linux 系统上运行,每个系统都有自己的工具链,并且每个目标也有很多不同的配置选项(例如,不同的预处理器定义和一些包含/排除的源)。它还应该在桌面 Linux 上运行,并且一些 GUI 模块必须在 Windows 上运行。

现在,CMake 有其 CMAKE_TOOLCHAIN_FILE 选项,可用于分解出每个嵌入式平台的工具链和编译器特定内容(桌面 Linux 和 Windows 不需要)。

我想放的不是CMake Wiki 上列出的东西在工具链文件中不是一个好主意。

我正在考虑创建一些可以通过 cmake gui 工具编辑的 CMake 变量,然后简单地使用 if/elseif 来确定正确的设置。

有没有人有更好或更优雅的建议?

最佳答案

我想不用长的if/elseif/else block 我可以简单地拥有

include(flags-${CONFIGURATION_NAME}.cmake)

在我的 CMakeLists.txt 中,每个配置的特定标志将简单地列在适当的标志文件中。

关于CMake 多个工具链和目标平台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5592117/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com