gpt4 book ai didi

cmake - 如何在单个构建中使 CMake 面向多个平台

转载 作者:行者123 更新时间:2023-12-04 16:07:28 26 4
gpt4 key购买 nike

我想以某种方式配置我的 CMake 项目,以便单个构建执行针对多个平台(在我的情况下,我想为 Linux 和 Windows 构建,分别针对 x86_32 和 x86_64)。我已经安装并运行了交叉编译器工具链,并为每个单独的目标进行了构建。

所以挑战在于以某种方式设置 CMake,即工具链和 CMAKE_SYSTEM_…为每个子构建适当设置变量。我怎样才能做到这一点?

最佳答案

一般来说,这是不可能的。

CMake 只允许一次配置单个目标平台。如果您想针对不同的平台,则需要从头开始重新运行 CMake。当工具链的其余部分保持不变(例如,您不能同时构建 x86 和 x64 二进制文件)时,这甚至适用于仅切换架构。

自动执行此操作的正确方法是拥有一个封闭的构建脚本,该脚本为每个目标平台调用一次 CMake,并对不同的二进制目录执行多个源外构建。这个封闭的脚本也可以用 CMake 本身编写( ExternalProject module 非常适合这个),尽管像 Python 或 Bash 这样的通用脚本语言可能更适合。

关于cmake - 如何在单个构建中使 CMake 面向多个平台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25365513/

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