新版clion(2025.2起)已移除独立embedded development入口,相关配置合并至toolchains;需在settings→toolchains中添加custom工具链,指定arm-none-eabi-gcc、arm-none-eabi-g++、arm-none-eabi-gdb的完整绝对路径,并在cmake profile中添加-dcmake_system_name=generic等三项关键参数。

CLion里找不到Embedded Development选项?
新版CLion(2025.2起)已移除独立的 Embedded Development 设置入口,相关配置全部合并进 Toolchains。如果你在 Settings → Build, Execution, Deployment 下没看到嵌入式专用面板,不是插件没装或版本错,而是设计变更——直接进 Toolchains 配就行。
添加ARM交叉编译工具链的关键字段填什么
点 Toolchains 右上角 + → Custom,核心三项必须手动指定:
-
C Compiler:必须是arm-none-eabi-gcc的**完整绝对路径**,比如/opt/arm-gnu-toolchain/bin/arm-none-eabi-gcc(macOS)或C:\tools\arm-gnu-toolchain\bin\arm-none-eabi-gcc.exe(Windows) -
C++ Compiler:同理填arm-none-eabi-g++路径 -
Debugger:填arm-none-eabi-gdb,别用系统自带的gdb,否则调试时会报Cannot access memory at address
注意:路径中不能含空格或中文;Mac Apple Silicon 用户确认下载的是 aarch64 架构的 Arm GNU Toolchain,而非 x86_64 交叉包。
CMake Profile里不加 -DCMAKE_SYSTEM_NAME=Generic 就编译失败
工具链配完只是第一步,CMake 必须明确知道这是交叉编译,否则仍调用 host 的 gcc。进 Settings → CMake,新增 Profile 并设置:
-
Toolchain:选你刚建的 ARM 工具链 -
CMake options:粘贴这三行(缺一不可):-DCMAKE_SYSTEM_NAME=Generic-DCMAKE_SYSTEM_PROCESSOR=ARM-DCMAKE_C_COMPILER=arm-none-eabi-gcc
如果工程用 CubeMX 生成,还需额外加 -DSTM32CubeMX_PATH=/Applications/STM32CubeMX.app(macOS)或对应 Windows 路径,否则 CLion 无法识别 .ioc 文件。
OpenOCD 和 STM32CubeMX 路径在哪填
这两个路径不归 Toolchain 管,而是在全局配置里:
-
OpenOCD:进Settings → Build, Execution, Deployment → Console → OpenOCD,填openocd可执行文件路径,例如/usr/local/bin/openocd(macOS)或C:\openocd\bin\openocd.exe(Windows) -
STM32CubeMX:进Settings → Languages & Frameworks → STM32CubeMX,填安装路径(macOS 是/Applications/STM32CubeMX.app,Windows 通常是C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeMX\STM32CubeMX.exe)
路径填错最典型的症状是:点击 Generate Code 没反应,或报错 Failed to launch STM32CubeMX: No such file or directory。











