10 Ubuntu下配置STMCubeMX与CLion IDE联合环境搭建(不包含下载CLion的教程)

序言

果然作为一名测控系的学生,纯搞视觉多少还是有点与专业脱节,决定入坑嵌入式。选择STM32进行入门,并且使用CubeMX加CLion作为我的第一个真正意义上的嵌入式开发环境(大一的时候玩过一段时间,但是没什么技术)。

STMCubeMX下载与安装

官网下载压缩包。(如果之前没有在ST上逛,那么需要注册一下,很快,几分钟就好了)

关于版本,我就建议用最新版就行。

收到邮件后,选择立刻下载即可。

下载完成后,是一个zip压缩包,解压,并对Setup文件赋予777执行权限。

sh 复制代码
chmod 777 SetupSTM32CubeMX-<your-version>

然后双击文件图标或者命令行中启动这个文件,即可开始安装。

一般来说会安装到用户目录下。安装完成后,其实双击安装完成后的目录中那个可执行文件就已经可以打开CubeMX了。

编译安装OpenOCD

预编译软件包

可以使用下面命令直接安装,但是Ubuntu预编译版本你懂的,或许不会那么新。建议编译安装。

sh 复制代码
sudo apt-get install openocd

源码编译安装

在GIthub上找到这个项目
openocd

发现在这个项目中有一个子模块,于是在clone的时候要加上参数。

shell 复制代码
git clone git@github.com:openocd-org/openocd.git --recursive

安装编译工具与包依赖。

bash 复制代码
sudo aptitude install libtool libsysfs-dev 
sudo apt install build-essential pkg-config autoconf automake libtool libusb-dev libusb-1.0-0-dev libhidapi-dev

开始编译

bash 复制代码
cd openocd
sudo ./bootstrap
sudo ./configure
sudo make -j8
sudo make install

使用openocd --version命令,如果能正常输出版本等信息的话,则说明安装成功。

gcc-arm-none-eabi安装

这个也可以进行源码安装,不过使用预编译的包也没什么。

安装命令很正常:

bash 复制代码
sudo apt install gcc-arm-none-eabi

安装STLINK的驱动

从github上下载:
我这里的链接是目前最新的1.7.0版本,如果你看到文章的时候有更新的版本可以考虑选择更新的

下载deb包后,使用命令

bash 复制代码
sudo dpkg -i stlink_1.7.0-1_amd64.deb 

进行安装。

结束

进行了这些安装之后,从道理上来说,就可以在CLion中创建CubeMX项目了。

但是还需要一些配置。

在设置中配置好openocd和cubemx。可以点击右边的测试来看自己找的文件是否正确。然后发现,自动初始化了CubeMX的新项目。

然后cubemx说需要安装一些开发版的信息,并且要登陆后安装,这就是后话了。

相关推荐
CheungChunChiu2 小时前
Linux 内核设备模型与驱动框架解析 ——以 rk-pcie 为例
linux·运维·ubuntu
吃西瓜的年年4 小时前
1. 初识C语言
c语言·开发语言
永远都不秃头的程序员(互关)4 小时前
C语言 基本语法
c语言·开发语言
赖small强5 小时前
【Linux C/C++开发】Linux 平台 Stack Protector 机制深度解析
linux·c语言·c++·stack protector·stack-protector·金丝雀机制
清风6666666 小时前
基于单片机的汽车安全气囊充气控制系统设计(protues仿真设计)
单片机·嵌入式硬件·汽车·毕业设计·课程设计·期末大作业
小李做物联网6 小时前
【单片机毕业设计】65.1基于单片机物联网智能书桌-超声+升降系统项目程序开发
stm32·单片机·嵌入式硬件·物联网
liu****6 小时前
3.链表讲解
c语言·开发语言·数据结构·算法·链表
赖small强7 小时前
【Linux C/C++开发】Linux C/C++ 堆栈溢出:原理、利用与防护深度指南
linux·c语言·c++·stack·堆栈溢出
jingshaoqi_ccc7 小时前
ubuntu 24下面安装docker
ubuntu·docker·eureka
TracyCoder1238 小时前
在Ubuntu上搭建大模型最基础的应用环境
linux·运维·ubuntu