Skip to content

构建配置文件说明

文档编写日期: 2026-03-20

使用办法 (Usage)

配置文件位于 scripts/build_helpers/ 目录,用于控制 CMake 构建参数。根据不同的构建场景选择相应的配置文件。

配置文件类型

配置文件用途构建类型工具链
build_develop_config.ini开发构建配置Debuglinux/gcc
build_deploy_config.ini部署构建配置Releaselinux/gcc
build_ci_config.iniCI 构建配置 (AMD64/x86_64)Releaselinux/ci-x86_64
build_ci_aarch64_config.iniCI 构建配置 (ARM64 交叉编译)Releaselinux/ci-aarch64
build_ci_armhf_config.iniCI 构建配置 (ARM32 HF 交叉编译)Releaselinux/ci-armhf
build_develop_config.ini.template开发配置模板--
build_deploy_config.ini.template部署配置模板--

配置项说明

[cmake] - CMake 基础配置

配置项说明可选值
generatorCMake 生成器类型Unix MakefilesNinjaVisual Studio 17 2022
toolchain编译工具链路径linux/gcclinux/ci-x86_64linux/ci-aarch64linux/ci-armhf
build_type构建类型DebugReleaseRelWithDebInfo

build_type 详细说明

构建类型优化级别调试信息适用场景
Debug-O0 (无优化)完整调试信息 (-g)开发调试阶段
Release-O3 (最高优化)最小调试信息生产环境部署
RelWithDebInfo-O2 (优化)完整调试信息 (-g)需要调试的发布版本

[paths] - 路径配置

配置项说明示例值
source源代码目录 (相对于项目根目录). 表示项目根目录
build_dir构建输出目录 (相对于项目根目录)out/build_developout/build_deployout/build_ci

构建目录对照表

构建场景build_dir
开发构建out/build_develop
部署构建out/build_deploy
CI 构建 (x86_64)out/build_ci
CI 构建 (ARM64)out/build_ci_aarch64
CI 构建 (ARM32 HF)out/build_ci_armhf

[options] - 额外选项

配置项说明
jobs并行编译任务数 (使用 Makefile 时生效)

工具链说明

本地开发工具链

工具链路径平台说明
linux/gcccmake/toolchain/linux/gcc.cmake本地 Linux使用系统默认 GCC 编译器

CI 构建工具链

工具链路径平台说明
linux/ci-x86_64cmake/toolchain/linux/ci-x86_64.cmakeAMD64Docker CI 环境标准构建
linux/ci-aarch64cmake/toolchain/linux/ci-aarch64.cmakeARM64交叉编译,使用 aarch64-linux-gnu-gcc
linux/ci-armhfcmake/toolchain/linux/ci-armhf.cmakeARM32 HF交叉编译,使用 arm-linux-gnueabihf-gcc,针对 IMX6ULL 等 Cortex-A7 平台

模板文件

.template 文件是配置模板,用于创建新的配置文件:

  1. 复制模板文件:cp build_develop_config.ini.template build_custom_config.ini
  2. 根据需要修改配置项
  3. 使用新配置文件进行构建

各配置文件详细参数

build_develop_config.ini - 开发构建

ini
[cmake]
generator=Unix Makefiles
toolchain=linux/gcc
build_type=Debug

[paths]
source=.
build_dir=out/build_develop

[options]
jobs=12
```text

**特点**:使用 Debug 模式,适合日常开发调试。

### build_deploy_config.ini - 部署构建

```ini
[cmake]
generator=Unix Makefiles
toolchain=linux/gcc
build_type=Release

[paths]
source=.
build_dir=out/build_deploy

[options]
jobs=16
```text

**特点**:使用 Release 模式,最高优化级别,适合生产部署。

### build_ci_config.ini - CI 构建 (AMD64)

```ini
[cmake]
generator=Unix Makefiles
toolchain=linux/ci-x86_64
build_type=Release

[paths]
source=.
build_dir=out/build_ci

[options]
jobs=16
```text

**特点**:用于 Docker CI 环境,x86_64 平台标准化构建。

### build_ci_aarch64_config.ini - CI 构建 (ARM64)

```ini
[cmake]
generator=Unix Makefiles
toolchain=linux/ci-aarch64
build_type=Release

[paths]
source=.
build_dir=out/build_ci_aarch64

[options]
jobs=16
```text

**特点**:在 x86_64 主机上交叉编译 ARM64 程序,使用 `aarch64-linux-gnu-gcc`。

### build_ci_armhf_config.ini - CI 构建 (ARM32 HF)

```ini
[cmake]
generator=Unix Makefiles
toolchain=linux/ci-armhf
build_type=Release

[paths]
source=.
build_dir=out/build_ci_armhf

[options]
jobs=16
```text

**特点**:在 x86_64 主机上交叉编译 ARM32 HF 程序,使用 `arm-linux-gnueabihf-gcc`,目标平台包括 IMX6ULL (i.MX 6UltraLite) 等 ARM Cortex-A7 设备。

Built with VitePress