使用CMake管理STM32工程

准备所需工具

CMake

CMake官网下载并安装CMake,并添加到环境变量。

在终端中执行

1
cmake --version

根据输出结果检查CMake是否安装成功。

Ninja

Ninja Github Releases下载Ninja,这是一个单文件,下载后存放至合适位置,并把此位置加入到环境变量。

在终端中执行

1
ninja --version

根据输出结果检查是否安装成功。

gcc-arm-none-eabi

gcc-arm-none-eabi Gitlab仓库下载并安装gcc-arm-none-eabi,并添加到环境变量。

在终端中执行

1
arm-none-eabi-gcc --version

根据输出结果检查是否安装成功。

创建项目

使用STM32CubeMX创建一个STM32项目,在Project Manager中,修改Toolchain / IDECMake,确保下方的Default CompilerGCC,点击GENERATE CODE创建项目。

编译项目

用终端打开创建好的项目目录,运行

1
cmake --build build

即可看到编译效果。编译好的文件在项目目录下的build文件夹中。

切换Debug/Release

此处用到了CMake预设(Presets),STM32CubeMX提前在CMakePresets.json中配置好了两个预设,分别为DebugRelease,只需要下面命令即可编译出对应文件。

1
2
cmake --preset Debug
cmake --build build/Debug
1
2
cmake --preset Release
cmake --build build/Release

上面分别为DebugRelease的编译命令。编译好的文件分别在项目目录下的build/Debugbuild/Release文件夹中。

在VSCode中编辑项目

首先用VSCode打开项目目录,VSCode需要安装CMake Tools插件。安装好后就能发现侧栏中多了一个CMake图标,底部工具栏左下角也多了一个齿轮图标的生成按钮,点击该按钮就能一键编译项目。

若想要切换Debug/Release,只需在侧栏中的CMake Tools拓展界面中,修改项目状态->配置中的预设,就能进行


使用CMake管理STM32工程
https://blog.faneter.top/2026/07/29/使用CMake管理STM32工程/
作者
Faneter
发布于
2026年7月29日
许可协议