目录
- [## 前言](## 前言)
-
- [一、Linux 下 Rust 环境由哪些部分组成](#一、Linux 下 Rust 环境由哪些部分组成)
-
- [1.1 核心工具说明](#1.1 核心工具说明)
- [1.2 推荐安装路线](#1.2 推荐安装路线)
- 二、准备工作:确认系统与架构
-
- [2.1 查看 Linux 发行版](#2.1 查看 Linux 发行版)
- [2.2 查看 CPU 架构](#2.2 查看 CPU 架构)
- 三、安装系统编译依赖
-
- [3.1 Ubuntu / Debian](#3.1 Ubuntu / Debian)
- [3.2 Fedora / RHEL / CentOS Stream](#3.2 Fedora / RHEL / CentOS Stream)
- [3.3 Arch Linux / Manjaro](#3.3 Arch Linux / Manjaro)
- [3.4 openSUSE](#3.4 openSUSE)
- [四、使用 rustup 安装 Rust](#四、使用 rustup 安装 Rust)
-
- [4.1 官方安装命令](#4.1 官方安装命令)
- [4.2 让环境变量立即生效](#4.2 让环境变量立即生效)
- [4.3 检查 PATH 配置](#4.3 检查 PATH 配置)
- [五、配置 Rust stable 工具链](#五、配置 Rust stable 工具链)
-
- [5.1 设置默认工具链](#5.1 设置默认工具链)
- [5.2 更新工具链](#5.2 更新工具链)
- [5.3 安装常用组件](#5.3 安装常用组件)
- [六、配置 Cargo 下载源](#六、配置 Cargo 下载源)
-
- [6.1 使用 sparse 协议](#6.1 使用 sparse 协议)
- [6.2 配置国内镜像](#6.2 配置国内镜像)
- [6.3 代理环境变量](#6.3 代理环境变量)
- [七、创建第一个 Rust 项目](#七、创建第一个 Rust 项目)
- [八、Cargo 常用命令](#八、Cargo 常用命令)
-
- [8.1 构建与运行](#8.1 构建与运行)
- [8.2 推荐提交前命令](#8.2 推荐提交前命令)
- [8.3 release 构建](#8.3 release 构建)
- [九、配置 VS Code 开发 Rust](#九、配置 VS Code 开发 Rust)
-
- [9.1 安装 VS Code 插件](#9.1 安装 VS Code 插件)
- [9.2 推荐 settings.json](#9.2 推荐 settings.json)
- [9.3 配置 LLDB 调试](#9.3 配置 LLDB 调试)
- [十、终端与 Neovim 开发方案](#十、终端与 Neovim 开发方案)
-
- [10.1 纯终端开发](#10.1 纯终端开发)
- [10.2 Neovim + rust-analyzer](#10.2 Neovim + rust-analyzer)
- [10.3 常见终端辅助工具](#10.3 常见终端辅助工具)
- [十一、Linux 常见问题与解决方案](#十一、Linux 常见问题与解决方案)
-
- [11.1 cargo 命令不存在](#11.1 cargo 命令不存在)
- [11.2 编译时报 cc not found](#11.2 编译时报 cc not found)
- [11.3 OpenSSL 编译失败](#11.3 OpenSSL 编译失败)
- [11.4 Cargo 下载依赖很慢](#11.4 Cargo 下载依赖很慢)
- [11.5 rust-analyzer 不生效](#11.5 rust-analyzer 不生效)
- [十二、管理多个 Rust 工具链](#十二、管理多个 Rust 工具链)
-
- [12.1 查看工具链](#12.1 查看工具链)
- [12.2 安装 nightly](#12.2 安装 nightly)
- [12.3 项目固定工具链](#12.3 项目固定工具链)
- 十三、添加测试验证环境
-
- [13.1 编写一个简单函数](#13.1 编写一个简单函数)
- [13.2 运行测试](#13.2 运行测试)
- [13.3 完整验证脚本](#13.3 完整验证脚本)
- 总结
- 相关资源
## 前言
Rust 是一门强调内存安全 、高性能 和并发可靠性的系统级编程语言。在 Linux 环境中学习和使用 Rust 非常合适,因为 Linux 本身拥有完善的编译工具链、包管理器、终端生态和服务器部署环境。
本文专注于 Linux 下搭建 Rust 环境 ,不展开 Windows 和 macOS。你将完成从系统依赖安装、rustup 安装、Cargo 镜像配置、VS Code 或终端开发、创建项目、运行测试到常见问题排查的完整流程。
建议使用
rustup安装 Rust,而不是直接使用发行版软件源里的rustc。rustup可以管理 stable、beta、nightly 多套工具链,也能安装rustfmt、clippy、rust-src等常用组件。

图示说明:Linux 搭建 Rust 的核心流程是"准备系统编译依赖 -> 安装 rustup -> 配置 Cargo -> 创建项目 -> 编译运行 -> 配置编辑器与调试工具"。
一、Linux 下 Rust 环境由哪些部分组成
1.1 核心工具说明
Linux 上的 Rust 开发环境通常由下面几部分组成:
| 工具 | 作用 | 是否推荐安装 | 常用命令 |
|---|---|---|---|
| rustup | Rust 工具链管理器 | 必装 | rustup update |
| rustc | Rust 编译器 | 必装 | rustc --version |
| cargo | Rust 包管理与构建工具 | 必装 | cargo build |
| rustfmt | 代码格式化工具 | 推荐 | cargo fmt |
| clippy | 静态检查工具 | 推荐 | cargo clippy |
| rust-analyzer | 编辑器语言服务 | 推荐 | VS Code 插件 |
| gcc/clang | C/C++ 编译依赖 | 推荐 | gcc --version |
| pkg-config | 查找系统库信息 | 推荐 | pkg-config --version |
可以简单理解为:rustup 管工具链,rustc 管编译,cargo 管项目,系统编译依赖负责链接本地库。
1.2 推荐安装路线
Linux 下推荐按下面顺序搭建:
- 确认发行版类型和系统架构。
- 安装基础编译依赖。
- 使用官方脚本安装
rustup。 - 配置 Cargo 环境变量。
- 配置 Cargo sparse 协议或国内镜像。
- 安装
rustfmt、clippy、rust-src。 - 创建项目并运行
cargo run。 - 配置 VS Code、Neovim 或 JetBrains RustRover。
- 执行
cargo fmt、cargo clippy、cargo test做完整验证。
二、准备工作:确认系统与架构
2.1 查看 Linux 发行版
不同 Linux 发行版安装系统依赖的命令不同。先查看系统信息:
bash
cat /etc/os-release
常见输出中会包含 ID 和 VERSION_ID。例如 Ubuntu 可能是:

也可以查看内核版本:
bash
uname -a
2.2 查看 CPU 架构
Rust 支持多种架构。开发机常见是 x86_64 或 aarch64:
bash
uname -m
架构说明:
| 输出 | 含义 | 常见设备 |
|---|---|---|
| x86_64 | 64 位 Intel/AMD | 服务器、台式机、笔记本 |
| aarch64 | 64 位 ARM | ARM 服务器、开发板 |
| armv7l | 32 位 ARM | 部分嵌入式设备 |
如果你只是普通 Linux 电脑或云服务器,大概率是 x86_64。
三、安装系统编译依赖
3.1 Ubuntu / Debian
Ubuntu 和 Debian 推荐先安装下面这些依赖:
bash
sudo apt update
sudo apt install -y build-essential curl git pkg-config libssl-dev ca-certificates

各依赖作用如下:
| 依赖 | 作用 |
|---|---|
| build-essential | 提供 gcc、g++、make 等编译工具 |
| curl | 下载 rustup 安装脚本 |
| git | 拉取依赖或项目代码 |
| pkg-config | 帮助 Rust crate 查找系统库 |
| libssl-dev | 编译 openssl 相关 crate |
| ca-certificates | 保证 HTTPS 证书可用 |
3.2 Fedora / RHEL / CentOS Stream
Fedora 可以使用:
bash
sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y curl git pkg-config openssl-devel ca-certificates
如果是 RHEL 或 CentOS Stream,命令也基本类似:
bash
sudo dnf install -y gcc gcc-c++ make curl git pkg-config openssl-devel ca-certificates
3.3 Arch Linux / Manjaro
Arch 系发行版使用 pacman:
bash
sudo pacman -Syu --needed base-devel curl git pkgconf openssl ca-certificates
base-devel 中包含常用编译工具,适合 Rust 编译本地依赖。
3.4 openSUSE
openSUSE 可以使用:
bash
sudo zypper refresh
sudo zypper install -y -t pattern devel_basis
sudo zypper install -y curl git pkg-config libopenssl-devel ca-certificates
如果你使用其他发行版,核心思路不变:准备 C 编译器、链接器、curl、git、pkg-config 和 OpenSSL 开发包。
四、使用 rustup 安装 Rust
4.1 官方安装命令
Rust 官方推荐通过 rustup 安装:
bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

安装过程中一般选择默认选项即可,也就是:
- stable 工具链
- 当前系统对应 target
- 默认 profile
- 自动写入 shell 配置
4.2 让环境变量立即生效
安装完成后,当前终端可能还识别不到 cargo。执行:
bash
source "$HOME/.cargo/env"
然后检查版本:
bash
rustup --version
rustc --version
cargo --version


如果三个命令都能输出版本号,说明 Rust 核心环境已经安装成功。
4.3 检查 PATH 配置
Rust 默认安装到用户目录:
text
~/.cargo/bin
可以查看 PATH:
bash
echo "$PATH"
如果没有 ~/.cargo/bin,可以手动写入 shell 配置。
Bash 用户:
bash
echo 'source "$HOME/.cargo/env"' >> ~/.bashrc
source ~/.bashrc
Zsh 用户:
bash
echo 'source "$HOME/.cargo/env"' >> ~/.zshrc
source ~/.zshrc
Fish 用户:
bash
fish_add_path $HOME/.cargo/bin
五、配置 Rust stable 工具链
5.1 设置默认工具链
建议默认使用 stable:
bash
rustup default stable
查看当前 active toolchain:
bash
rustup show
输出中会看到当前默认工具链和安装目录。
5.2 更新工具链
Rust 会持续发布新版本,日常可以使用:
bash
rustup update
如果只想更新 stable:
bash
rustup update stable
5.3 安装常用组件
推荐安装:
bash
rustup component add rustfmt clippy rust-src
组件说明:
| 组件 | 作用 |
|---|---|
| rustfmt | 自动格式化 Rust 代码 |
| clippy | 提供更严格的 lint 检查 |
| rust-src | 提供标准库源码,便于编辑器跳转 |
六、配置 Cargo 下载源
6.1 使用 sparse 协议
较新的 Cargo 支持 sparse registry,下载索引更快。创建或编辑:
bash
mkdir -p ~/.cargo
nano ~/.cargo/config.toml
写入:
toml
[registries.crates-io]
protocol = "sparse"
保存后测试:
bash
cargo search serde
6.2 配置国内镜像
如果访问 crates.io 较慢,可以配置镜像。以 rsproxy 为例:
toml
[source.crates-io]
replace-with = "rsproxy-sparse"
[source.rsproxy]
registry = "https://rsproxy.cn/crates.io-index"
[source.rsproxy-sparse]
registry = "sparse+https://rsproxy.cn/index/"
[registries.rsproxy]
index = "https://rsproxy.cn/crates.io-index"
[net]
git-fetch-with-cli = true
配置完成后运行:
bash
cargo search tokio
能正常返回搜索结果,说明 Cargo 索引访问正常。
6.3 代理环境变量
如果你在公司网络、校园网或代理环境中,也可以设置代理:
bash
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
也可以只对 Git 设置代理:
bash
git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy http://127.0.0.1:7890
取消代理:
bash
git config --global --unset http.proxy
git config --global --unset https.proxy
七、创建第一个 Rust 项目
7.1 使用 cargo new
进入工作目录后执行:
bash
cargo new hello_rust
cd hello_rust
项目结构如下:
text
hello_rust
├── Cargo.toml
└── src
└── main.rs
7.2 查看 Cargo.toml
Cargo.toml 是 Rust 项目的配置文件:
toml
[package]
name = "hello_rust"
version = "0.1.0"
edition = "2021"
[dependencies]
字段说明:
name:项目名称。version:项目版本。edition:Rust edition。dependencies:第三方依赖。
7.3 编写 main.rs
打开 src/main.rs:
rust
fn main() {
println!("Hello, Linux Rust!");
}
运行:
bash
cargo run
看到下面输出就说明成功:
text
Hello, Linux Rust!
八、Cargo 常用命令
8.1 构建与运行
Rust 项目日常开发基本都围绕 Cargo 展开:
| 命令 | 作用 | 使用场景 |
|---|---|---|
cargo new demo |
创建项目 | 初始化 |
cargo build |
编译项目 | 开发阶段 |
cargo run |
编译并运行 | 快速验证 |
cargo test |
执行测试 | 单元测试/集成测试 |
cargo fmt |
格式化代码 | 提交前 |
cargo clippy |
静态检查 | 质量检查 |
cargo clean |
清理构建产物 | 重新构建 |
cargo build --release |
发布构建 | 生产部署 |
8.2 推荐提交前命令
提交代码前建议执行:
bash
cargo fmt
cargo clippy -- -D warnings
cargo test
这三条命令分别检查格式、代码质量和行为正确性。
8.3 release 构建
发布二进制程序时使用:
bash
cargo build --release
产物路径:
text
target/release/
release 模式会启用优化,运行性能明显优于 debug 模式。
九、配置 VS Code 开发 Rust
9.1 安装 VS Code 插件
Linux 桌面环境可以使用 VS Code 开发 Rust,推荐插件:
| 插件 | 作用 | 链接 |
|---|---|---|
| rust-analyzer | Rust 语言服务 | Marketplace |
| CodeLLDB | 调试 Rust 程序 | Marketplace |
| Even Better TOML | TOML 高亮 | Marketplace |
| crates | 查看依赖版本 | Marketplace |
9.2 推荐 settings.json
在项目中创建 .vscode/settings.json:
json
{
"editor.formatOnSave": true,
"rust-analyzer.check.command": "clippy",
"rust-analyzer.cargo.features": "all",
"files.trimTrailingWhitespace": true
}
这份配置会让保存格式化和 Clippy 检查更顺手。
9.3 配置 LLDB 调试
安装 CodeLLDB 后,可以创建 .vscode/launch.json:
json
{
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug hello_rust",
"cargo": {
"args": ["build", "--bin=hello_rust"],
"filter": {
"name": "hello_rust",
"kind": "bin"
}
},
"args": [],
"cwd": "${workspaceFolder}"
}
]
}
注意把 hello_rust 改成自己的项目名。
十、终端与 Neovim 开发方案
10.1 纯终端开发
如果你习惯终端开发,可以使用:
bash
cargo check
cargo test
cargo run
cargo check 不生成最终二进制,检查速度更快,适合频繁验证语法和类型。
10.2 Neovim + rust-analyzer
Neovim 用户可以通过 LSP 接入 rust-analyzer。核心依赖是:
bash
rustup component add rust-analyzer
如果发行版没有直接提供 rust-analyzer,也可以让编辑器插件自动下载。
10.3 常见终端辅助工具
可以额外安装:
bash
cargo install cargo-watch
cargo install cargo-edit
用途:
cargo-watch:文件变化后自动执行命令。cargo-edit:提供cargo add、cargo rm等依赖管理命令。
示例:
bash
cargo watch -x check -x test
十一、Linux 常见问题与解决方案
11.1 cargo 命令不存在
原因通常是 ~/.cargo/bin 没有加入 PATH。
处理方式:
bash
source "$HOME/.cargo/env"
echo "$PATH"
如果使用 Bash:
bash
echo 'source "$HOME/.cargo/env"' >> ~/.bashrc
source ~/.bashrc
11.2 编译时报 cc not found
说明系统没有安装 C 编译器。
Ubuntu/Debian:
bash
sudo apt install -y build-essential
Fedora:
bash
sudo dnf groupinstall -y "Development Tools"
Arch:
bash
sudo pacman -S --needed base-devel
11.3 OpenSSL 编译失败
很多依赖会用到 OpenSSL。Ubuntu/Debian 安装:
bash
sudo apt install -y pkg-config libssl-dev
Fedora 安装:
bash
sudo dnf install -y pkg-config openssl-devel
Arch 安装:
bash
sudo pacman -S --needed pkgconf openssl
11.4 Cargo 下载依赖很慢
可以先开启详细日志:
bash
cargo build -vv
如果卡在索引或下载阶段,优先配置 sparse 协议或国内镜像。
11.5 rust-analyzer 不生效
排查顺序:
- 确认 VS Code 打开的是项目根目录。
- 确认根目录存在
Cargo.toml。 - 执行
cargo check看项目是否能通过基础检查。 - 安装
rust-src。 - 重启编辑器。
安装命令:
bash
rustup component add rust-src
十二、管理多个 Rust 工具链
12.1 查看工具链
bash
rustup toolchain list
常见输出:
text
stable-x86_64-unknown-linux-gnu (default)
nightly-x86_64-unknown-linux-gnu
12.2 安装 nightly
某些实验功能需要 nightly:
bash
rustup toolchain install nightly
临时使用 nightly:
bash
cargo +nightly build
初学和生产项目仍然建议优先使用 stable。
12.3 项目固定工具链
可以在项目根目录创建 rust-toolchain.toml:
toml
[toolchain]
channel = "stable"
components = ["rustfmt", "clippy", "rust-src"]
profile = "default"
团队成员进入项目后会自动使用指定工具链。
十三、添加测试验证环境
13.1 编写一个简单函数
修改 src/main.rs:
rust
fn add(left: i32, right: i32) -> i32 {
left + right
}
fn main() {
println!("1 + 2 = {}", add(1, 2));
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn add_should_work() {
assert_eq!(add(1, 2), 3);
}
}
13.2 运行测试
bash
cargo test
如果看到测试通过,说明 Rust 编译、运行、测试链路都正常。
13.3 完整验证脚本
可以把下面命令逐条执行:
bash
rustup --version
rustc --version
cargo --version
cargo new rust_env_check
cd rust_env_check
cargo run
cargo fmt
cargo clippy
cargo test
全部成功后,Linux Rust 环境就搭建完成了。
总结
Linux 下搭建 Rust 环境的核心步骤并不复杂:先安装系统编译依赖,再通过 rustup 安装 Rust stable 工具链,随后配置 Cargo 下载源,最后用 cargo new、cargo run、cargo test 做完整验证。
如果你使用 Ubuntu、Debian、Fedora、Arch 或 openSUSE,本文都给出了对应依赖安装命令。完成配置后,你就可以在 Linux 上使用 Rust 开发命令行工具、Web 服务、系统程序和高性能后端应用。
如果这篇文章对你有帮助,欢迎点赞、收藏、关注。你的支持是我持续创作 Rust 学习笔记和 Linux 工程实践文章的动力!