构建和配置系统——构建系统——构建系统(CMake)

Zephyr操作系统使用CMake进行构建,其过程包括配置和构建两个阶段。配置阶段涉及CMakeLists.txt文件处理,生成Makefile或Ninja文件。CMake支持Ninja和Make构建系统,通过目标组织构建。构建阶段由预构建、首次二进制、最终二进制和编译后处理组成,涉及设备树、Kconfig、预处理器、系统调用、链接器脚本等多个方面。预处理的设备树源生成头文件,Kconfig处理配置选项,最终生成Zephyr应用程序。
摘要由CSDN通过智能技术生成

构建系统(CMake)

构建系统(CMake)

CMake用于与Zephyr内核一起构建应用程序。CMake构建分两个阶段完成。第一个阶段称为配置。在配置期间,将执行CMakeLists.txt构建脚本。配置完成后,CMake有一个Zephyr构建的内部模型,并且可以生成对主机平台原生的构建脚本。

CMake支持为几个构建系统生成脚本,但Zephyr只测试及支持Ninja和Make。在配置完成后,您可以通过执行生成的构建脚本来开始构建阶段。这些构建脚本可以重新编译应用程序,而不涉及CMake同步更改。但是,在进行了某些更改之后,必须在构建之前再次执行配置步骤。构建脚本可以检测这些情况并自动重新配置,但在某些情况下必须手动完成。

Zephyr使用CMake的“目标”概念来组织构建。目标可以是可执行文件、库或生成的文件。对于应用程序开发人员来说,库目标是需要理解的最重要的。所有进入Zephyr构建的源代码都是包含在库目标中,甚至是应用程序代码。

库目标有源代码,这是通过CMakeLists.txt构建脚本添加的:

target_sources(app PRIVATE src/main.c)

在上面的CMakeLists.txt中,一个现有的名为app的库目标被配置为包含源文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值