安装与验证 Rust 工具链
1. 概述
Rust 工具链(toolchain)由三个核心组件构成:
- rustup:工具链安装器与版本管理器,负责安装、更新 Rust 及其组件,并管理 stable / beta / nightly 三个发布频道。
- rustc:Rust 编译器,将
.rs源文件编译为目标平台的机器码。 - cargo:官方构建工具与包管理器,统一处理编译、依赖解析、测试与运行。
三者均安装于 ~/.cargo/bin 目录。日常开发中,开发者主要通过 cargo 间接调用其余组件。
2. 安装
Rust 官方推荐的安装方式为 rustup。该方式的优势在于:安装过程跨平台一致,且后续的版本更新与卸载均由同一工具管理。
类 Unix 系统(macOS / Linux):
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shWindows 平台下载并运行 rustup-init.exe。
Rust 采用 6 周一个稳定版的发布节奏(release train model),因此定期执行 rustup update 可保持工具链为最新。安装的详细说明与 PATH 配置问题的排查,见官方安装页。
3. 验证安装
安装完成后,开发者可通过以下命令确认工具链状态:
rustc --version
# rustc 1.96.0 (ac68faa20 2026-05-25)
cargo --version
# cargo 1.96.0 (30a34c682 2026-05-25)
rustup check
# 列出已安装的工具链及其是否为最新版本若任一命令提示 command not found,通常表明 ~/.cargo/bin 未被加入 PATH 环境变量;重启终端或重新登录后重试。
4. 编译并运行第一个程序
本仓库的 exercises/ 目录为一个 cargo workspace。其中 exercises/0001-playground 为配套的练习 crate,其入口源码如下:
fn main() {
println!("Hello, world!");
}其中 fn main() 是程序的入口函数(entry point):可执行文件被运行时,执行从 main 开始。每个 binary crate 有且只有一个 main,没有它程序就无法启动。本例中 main 的全部工作,就是执行 println! 向终端输出一行 Hello, world!。
4.1 手动编译:rustc
在 crate 目录下直接调用 rustc,将源文件编译为可执行文件:
cd exercises/0001-playground
rustc src/main.rs
./main
# Hello, world!rustc 读取 src/main.rs,在当前目录生成同名的可执行文件 main;运行该文件,程序即从 main 函数开始执行。
该方式仅适用于单文件程序。真实项目的源码通常拆分为多个文件,需要引入第三方依赖(涉及下载与版本解析),并包含测试;这些环节逐一手动执行并不现实。
4.2 自动化:cargo
cargo 在上述过程之上提供自动化:编译、链接、运行由一条命令完成,依赖与测试亦由其管理。package 的名称与元信息定义于 crate 目录下的 Cargo.toml:
[package]
name = "lesson_0001"
version = "0.1.0"
edition.workspace = true
[dependencies]回到仓库根目录执行:
cd exercises
cargo run -p lesson_0001
# Hello, world!cargo run 等价于手动方式中的编译与运行两个步骤,产物统一存放于 target/ 目录。-p 后的名称即上述 name 字段,与目录名无关。
本课程的后续练习均为 exercises/ 下的独立 crate,通过 cargo test -p <crate名> 运行测试。
5. 更新与卸载
rustup update # 更新工具链至最新稳定版
rustup self uninstall # 完全卸载 Rust 及 rustup