安装Rust

RustupRust 官方的跨平台 Rust 安装工具。 在国内安装时,可能会出现网络问题无法安装或是安装速度非常慢,可以通过修改环境变量 RUSTUP_DIST_SERVERRUSTUP_UPDATE_ROOT 来改为使用国内的镜像进行安装。

设置使用国内镜像

参考:Rust Toolchain 反向代理使用帮助

使用 rustup 前,先设置环境变量 RUSTUP_DIST_SERVER (用于更新 toolchain):

1
export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static

以及 RUSTUP_UPDATE_ROOT (用于更新 rustup):

1
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup

第一次安装 rustup 的时候,如果按照官网教程 https://sh.rustup.rs 链接无法下载,可以通过 jsdelivr 下载 rustup-init.sh, 然后把脚本中的 USTUP_UPDATE_ROOT 变量改为 https://mirrors.ustc.edu.cn/rust-static/rustup。

下载 Rustup 并安装 Rust

要下载 Rustup 并安装 Rust , 请在终端中运行以下命令, 然后遵循屏幕上的指示。

1
2
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Rust 中, cargo 使用国内镜像源

为应用添加依赖时, 默认的依赖安装源在 crates.io, 即 Rust 包的仓库中找到所有类别的库。

程序中引用 crates, 编译时需要从官方仓库中下载 crates 文件,但是使用官方的源有的时候很慢并且不稳定,所以使用时需要替换为国内镜像地址,目前常用的是中科大的源。

cargo.toml 文件中添加了依赖之后,运行 cargo build 命令时, 如果网络出现问题, 则会卡在 blocking waiting for file lock on package cache lock 这里。

更换 cargo 的源

新建 $HOME/.cargo/config.toml 文件, 在文件中添加如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[source.crates-io]
registry = "https://github.com/rust-lang/crates.io-index"
replace-with = 'ustc' # 可选:'tuna'、'ustc'、'rustcc'

# 清华大学
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

# 中国科学技术大学
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"

# 上海交通大学
[source.sjtu]
registry = "https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index.git"

# rustcc 社区
[source.rustcc]
registry = "git://crates.rustcc.cn/crates.io-index"

如果所处的环境中不允许使用 git 协议,可以把上述地址改为:

1
registry = "https://mirrors.ustc.edu.cn/crates.io-index"