本篇博客搭建了一个Rust
嵌入式开发的基础环境,不同的芯片,只需要在此基础上安装对应的toolchain
和target
即可,由于是Windows
环境,为了最完美的兼容和适配,我们选择MSVC
而不是GNU
,这是长期实践下来比较完美的方案,若你是新手,无脑照抄即可。
安装Rust
若使用国内的网络直连,安装Rust
时可能会耗费大量时间在下载环节,所以先配置一下代理(合理合法,免费使用)。
浏览器搜索并打开
rsproxy.cn
,可以看到其主页介绍的用法是Linux
/MAC
系统下的常用方式,我们侧重介绍如何在Windows
系统下配置,Windows 10
/Windows 11
均可。按下键盘上的
Win
键,输入edit environment variables for your account
/环境变量
,打开环境变量编辑页面。图上是已经配置好的效果,具体操作方法如下
- 点击
Edit
/编辑
,将RUSTUP_DIST_SERVER
和https://rsproxy.cn
,依次填入相应位置 - 如法炮制,再将
RUSTUP_UPDATE_ROOT
和https://rsproxy.cn/rustup
填入相应位置
- 点击
安装
Rust
Rust Installer
,点击直接下载- 下载完成后,双击打开即可
- 输入
1
,按下回车(Enter
),之后的弹窗继续点击Yes
- 继续点击
Continue
- 点击
Install
- 等待进度条跑完
- 完成
- 完成以上步骤之后,
Rust Installer
会继续引导我们完成接下来的步骤- 可以看到,已经识别到了
host
,toolchain
等信息
- 可以看到,已经识别到了
- 现在输入
2
,并且按下回车(Enter
)确认 - 继续回车(
Enter
) - 输入
nightly
,继续回车(Enter
) - 接下来一直点回车(
Enter
)即可,以下是安装过程,耐心等待即可 - 命令行窗口提示:
Rust is installed now. Great!
,则说明安装成功 - 按下回车(
Enter
)即可 - 打开
Visual Studio Installer
,安装一些必备组件,之后编译项目或者工具的时候需要用到,点击Modify
- 勾选
Desktop development with C++
,点击Modify
,之后的弹窗点击Yes
即可 - 等待进度条跑满(下载速度能到
100MB/s
,使用SSD
的情况下,估计两分钟就完成了) - 安装完成会再次回到这个界面,关闭即可
若只是安装
Rust
,并且只是用标准库(无法做嵌入式开发),则完成以上步骤即可,但Rust
嵌入式会频繁使用到crates.io
的一些crate
(理解成其他语言的库/模块),所以还需要配置拉取rsproxy
提供的镜像(一分钟更新一次,可以近似理解为不会过时),具体操作步骤如下- 按下
Win
+E
,打开资源管理器,进入C
盘下的user
目录,进入当前用户目录(我的是Admin
,顺便一提,用户名最好是英文或者数字,不要用中文或者夹杂一些其他符号),继续进入.cargo
目录,如果顺利,你当前的PWD
应该类似是这样的:C:\Users\Admin\.cargo
,紧接着复制rsproxy
主页代码块里的配置文件 - 在当前目录下(
C:\Users\Admin\.cargo
)新建一个config.toml
文件,将以下toml
配置,粘贴进去(可以新建一个config.txt
文件,将内容粘贴进去后,再将后缀更改为toml
即可)
- 按下
|
|
安装实用工具
- 代码编辑软件和插件
- 软件
- 选用
vscode
作为编辑器足矣- 至于
nvim
和zed
或者是其余的editor
/IDE
,并不适合新手入门,而且vscode
也不算过时
- 至于
- 选用
- 插件
rust-lang.rust-analyzer
:提供Rust LSP
,当前最优秀的Rust
语言服务器,vscode + RA
的好用程度远超JetBrains
家的RustRover
fill-labs.dependi
:帮助管理crate
,更直观的看到当前工程下crate
的版本信息tamasfe.even-better-toml
:提供toml
语法高亮和补全probe-rs.probe-rs-debugger
:调试服务器- 以上所有插件,直接复制名称,粘贴在
vscode
的插件市场的搜索栏里,回车搜索,点击安装即可
- 以上所有插件,直接复制名称,粘贴在
- 软件
- 安装交叉编译工具链和下常用工具
- 打开命令行,输入以下命令,并按下回车(
Enter
),按照顺序执行即可
- 打开命令行,输入以下命令,并按下回车(
|
|
- 安装以上工具时,会先拉取依赖的
crate
,再进行编译,CPU
会瞬间跑满,风扇起飞,给出一个执行cargo install cargo-binstall
的参考
综上,搭建了一个基础的Rust
嵌入式开发环境,之后的教程主要使用STM32
, ESP32
, RP2040 Pico, RP2350 Pico2
等MCU
进行演示。
至此,若只开发STM32
常用芯片(STM32F1xx
, STM32F4xx
, STM32H7xx
, STM32G4xx
),则以上环境配置足矣,若还要继续开发其他架构的芯片,例如Cortex M33
架构,则需要安装其他的交叉编译工具(若是想要提前尝鲜,也可求助LLM
)。至于RP 2040/235X Pico(2)
和ESP32
的开发环境,会分别各自单开一篇博客来讲,若是复用到本篇博客,我也会详细注明。
Rust
本身就是一门反复入门,不断卸载重装的语言,若是学习过程让你感觉到吃力,不舒服,你想继续回归C/C++
嵌入式,请按照以下步骤完成卸载。
卸载Rust
嵌入式开发环境
卸载
Rust
及工具链- 打开
CMD
/Powershell
,输入以下命令,并且回车(Enter
)确认
1
rustup self uninstall
- 继续输入
y
,按下回车(Enter
) - 命令行出现以下结果,则说明卸载成功
- 打开
卸载
Visual Studio Community
- 打开
geek uninstaller
,若是没有,请自行搜索安装 - 找到
Visual Studio Community
,右键,点击Uninstall
- 在弹出的
Visual Studio Installer
窗口点击OK
- 片刻等待之后,卸载完成
- 继续卸载
Build Tools
,点击Uninstall
,继续点击OK
- 出现以下界面,则完成卸载
- 再次回到
geek uninstaller
,会自动弹窗清理无用注册表,点击Finish
即可
- 打开
完成以上步骤之后,Rust
嵌入式开发便与你再无交集,恭喜脱离苦海。
视频版本,可以点击跳转到Bilibili
观看
视频录制的时间可能有些早,但是内容完全一样,若是视频无法复现,可以先按照博客的图文进行操作,若还是失败,可以在视频平台给我私信。