TIP本文介绍如何在 Linux 系统下配置 STM32 开发环境,包括必要的工具安装、驱动配置、调试支持等。
📚 目录
开发环境概述
IMPORTANT测试环境说明:
操作系统:Ubuntu 20.04 LTS
MCU 型号:STM32F103C8T6
开发工具:STM32CubeMX、CLion、STM32CubeCLT
调试接口:ST-Link v2
这套组合是 Linux 下开发 STM32 的主流方案,具备完全开源、可定制的特点。
安装 STM32CubeMX
IMPORTANT注意:
STM32CubeMX 依赖 Java 环境,安装前请确保系统已正确配置 JDK。
STM32CubeMX 是 ST 官方提供的图形化初始化配置工具,可生成 HAL 库工程框架。
- 前往 ST 官方下载页面,下载最新版 Linux 安装包。
- 下载后解压到你想存放的位置(例如
~/Iot/)。 - 解压后文件结构如下:

📘
Readme.html是官方用户手册,可供参考。
-
授予安装文件执行权限并安装:
Terminal window chmod +x SetupSTM32CubeMX-6.14.1./SetupSTM32CubeMX-6.14.1安装过程与 Windows 类似,按照提示操作即可。
-
安装完成后界面如下:

安装 CLion
Windows 下常用 Keil 开发 STM32,本次尝试使用 JetBrains 的 CLion 进行跨平台开发,参考了 B站 UP 主 keysking 的教学视频。
- 前往CLion 官网下载 Linux 安装包。

-
解压后进入
~/CLion/bin目录,运行:Terminal window ./clion -
为方便启动,可创建桌面图标:
Terminal window nano ~/.local/share/applications/clion.desktop粘贴以下内容(路径请根据实际修改):
[Desktop Entry]Version=1.0Type=ApplicationName=CLionIcon=/home/yourusername/apps/clion-2025.1/bin/clion.svgExec=/home/yourusername/apps/clion-2025.1/bin/clion.shComment=JetBrains CLion IDECategories=Development;IDE;Terminal=falseStartupNotify=true
TIP⚠️ 替换路径为实际安装路径,可将
.desktop文件复制到桌面以便图形化启动。
安装工具链 STM32CubeCLT
- 在 STM32CubeMX 右下角点击 External Tools,进入 ST 官网下载 STM32CubeCLT。

-
下载并解压后,在终端执行:
Terminal window chmod 777 st-stm32cubeclt_xx_amd64.sh./st-stm32cubeclt_xx_amd64.shWARNING
⚠️
xx为具体版本号,例如1.18.0,建议全屏运行安装程序避免错过条款提示。 -
安装过程中全程按
Y同意协议,设置安装路径(如/home/xx/st/stm32cubeclt_1.18.0)。 -
安装成功提示:
STM32CubeCLT installed successfully

-
插入 ST-Link V2(不接开发板),运行 CLT 目录下的
STLinkUpgrade.sh升级调试器固件。 -
添加环境变量:
Terminal window echo 'export PATH=$PATH:/home/xx/st/stm32cubeclt_1.18.0/bin' >> ~/.bashrcsource ~/.bashrcWARNING
安装完成建议重启系统,否则 CLion 可能找不到
arm-none-eabi-gcc等工具。
创建第一个工程
-
启动 CLion,选择非商业许可证。
-
选择新建 STM32 项目:

- 配置 STM32CubeMX 路径:

- 启动 CubeMX,新建项目,选择芯片(如 STM32F103C8T6):

- 配置调试接口(SW),设置 PC13 为 GPIO_Output:

- 设置工程路径:

- 配置工具链,使用 GCC 和 Ninja:

- 勾选 Reload CMake Project,确保路径生效:

- 启用调试服务器:

- 配置 ST-Link:

- 关闭持久会话以支持自动复位:

-
烧录测试(点灯):

-
点击右上角运行,左下角查看烧录日志:

- 点灯成功 🎉:

部分信息可能已经过时