简明快速配置 Rust 工具链

以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」mp.weixin.qq.com/s/dBzL9WZ8P...

你可能会为不同版本的工具链而烦恼,就算是 ruster 也一样。介绍一个非常好用的管理工具给大伙,就是使用 Rustup 安装和更新 Rust 工具链。安装 Rustup 之后,可以在 stable, beta,和 nightly 等版本的 Rust 编译器工具之间无缝切换。

写本文的时候,Rust 编程语言的使用已经越来越流行,受到大量编程人员和企业的尝试和偏好。Rust 受欢迎的原因之一是 Rust 提供的工具非常好用,对于开发人员来说,使用这些工具已经是一种享受。

Rustup 作为管理 Rust 工具的官方版本,它不仅可以用于安装 Rust 并保持更新,还可以让你在不同版本 Rust 编译器和工具之间无缝切换。

Rustup 到底有那么神奇吗?下面就让我来带你走一遍 rustup 以及一些常用的操作指令。

默认安装方法

如果你想在 Linux 上安装 Rust,可以使用包管理器。在 Ubuntu 上的包管理器 apt

arduino 复制代码
$ sudo apt-get install rustc cargo

这样子安装的是 Rust 工具链的稳定版本,非常适合 Rust 初学者和想要尝试编译和运行简单的程序。其中,rustc 是 rust 的编译器,cargo 是 rust 的包管理器。

但是,Rust 是一种较新的编程语言,它变化很快,并且经常更新升级,会发布许多新功能和特新。这些功能和特性会被放在 Rust 工具链的 nightly 和更新版本中。

在不影响系统已安装的稳定版本情况下,如果又想尝试新功能,必然需要安装较新版本的工具链。不幸的是,大部分系统发行版的包管理器无法帮到做到这些。

那么怎么办?且往下看!

使用 rustup

为了安装 rustup,需要从官网下载脚本文件,使用常见的 curl 指令

shell 复制代码
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > sh.rustup.rs

在运行安装下载脚本 sh.rustup.rs 之前,可以选择把安装源改到国内其中一个镜像,方便加快速度。

arduino 复制代码
export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static

接着启动下载安装 rust 的脚本 sh.rustup.rs,开始下载安装

shell 复制代码
$ ./sh.rustup.rs
info: downloading installer
...

脚本 sh.rustup.rs 会先下载必要的文件,所以稍等片刻,然后出现提示时选择选项 1:

csharp 复制代码
1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
> 1

安装后,直接输入查看工具链版本的命令,你会发现终端提示还是无法找到对应命令

javascript 复制代码
$ rustc -V
-bash: /usr/bin/rustc: No such file or directory
$ cargo -V
-bash: /usr/bin/rustc: No such file or directory

这时,你需要重启命令终端,目的是重新载入环境变量和包含 cargo 的 bin 目录。

但是我比较懒,所以直接手动配置环境变量以包含 cargo 的 bin 目录

shell 复制代码
$ source $HOME/.cargo/env

这样就可以开始使用 rust 工具链了

ruby 复制代码
$ rustc -V
rustc 1.72.0 (5680fa18f 2023-08-23)
$ cargo -V
cargo 1.72.0 (103a7ff2e 2023-08-15)

查看已安装和生效的版本

使用 rustup 据说可以管理多个版本的 rust 工具链,那么,当前哪一版的工具链是处于生效状态呢?

使用以下命令查看

sql 复制代码
$ rustup show
Default host: x86_64-unknown-linux-gnu
rustup home:  /home/user/.rustup

stable-x86_64-unknown-linux-gnu (default)
rustc 1.72.0 (5680fa18f 2023-08-23)

切换不同版本

安装好 rustup 后可以根据需要进行更改 rust 目前生效的工具链。如果你当前使用的工具链是稳定版,并希望尝试 nightly 版本中提供的新引入的功能,可以轻松切换到 nightly 版本中

arduino 复制代码
$ rustup default
$ rustup default nightly

对应的,切换不同版本之后,如果需要查看 Rust 编译器和包管理器的确切路径,可以

bash 复制代码
$ rustup which rustc
/home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/bin/rustc
$ rustup which cargo
/home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/bin/cargo

检查和更新

简单检查一下发布源是否又新的 Rust 工具链可用:

ruby 复制代码
$ rustup check

当你收到消息有新的 Rust 的版本已发布,并且有一些不错的功能或者特性,怎么获取最新版本的 Rust?使用 update 子命令

ruby 复制代码
$ rustup update

更多

上面简单介绍了一些命令足以满足日常使用,但是难免总有遗漏,rustup 还有很多命令可以挖掘,建议参考帮助部分了解更多详细信息

shell 复制代码
$ rustup --help

可能你会想知道是不是查找详细的指导信息都得在网上搜索?

告诉你一个好消息,所有 Rust 文档都已经被 rustup 安装在你的本地系统上了,并且是离线可用。你可以访问本地文档,其中包括书籍、标准库等:

ruby 复制代码
$ rustup doc
$ rustup doc --book
$ rustup doc --std
$ rustup doc --cargo

当然,Rustup 在 GitHub 上也有一本完整的书,你可以将其用作参考。


Rust 正在快速发展中,是最近几年最令人兴奋的一门新兴编程语言。如果你对编程的发展演化感兴趣,欢迎关注我,一起学习交流!

相关推荐
幸运小圣20 小时前
Vue3 -- 项目配置之stylelint【企业级项目配置保姆级教程3】
开发语言·后端·rust
老猿讲编程1 天前
Rust编写的贪吃蛇小游戏源代码解读
开发语言·后端·rust
yezipi耶不耶1 天前
Rust 所有权机制
开发语言·后端·rust
喜欢打篮球的普通人1 天前
rust并发
rust
大鲤余1 天前
Rust开发一个命令行工具(一,简单版持续更新)
开发语言·后端·rust
梦想画家1 天前
快速学习Serde包实现rust对象序列化
开发语言·rust·序列化
数据智能老司机1 天前
Rust原子和锁——Rust 并发基础
性能优化·rust·编程语言
喜欢打篮球的普通人2 天前
Rust面向对象特性
开发语言·windows·rust
上趣工作室2 天前
uniapp中使用全局样式文件引入的三种方式
开发语言·rust·uni-app
许野平2 天前
Rust:GUI 开源框架
开发语言·后端·rust·gui