Ubuntu Rust 配置全攻略
小樊
35
2025-12-26 08:24:48
Ubuntu Rust 配置全攻略
一 安装方式与选择
- 使用 rustup(强烈推荐):工具链多路复用器,支持安装与管理多个 Rust 版本(Stable/Beta/Nightly)、交叉编译目标与组件,适合日常开发与学习。
- 使用 APT 系统包:命令简单、系统级安装,但版本通常较旧(例如在 Ubuntu 22.04 仓库中常见为 v1.61),适合只运行既有项目、对工具链版本不敏感的场景。
- 建议:开发环境优先选择 rustup;若仅需运行旧项目或受限于运维策略,再考虑 APT。
二 使用 rustup 安装与初始化
- 安装依赖(编译器等):
- sudo apt update
- sudo apt install curl build-essential gcc make
- 安装 rustup 与 Rust(非 root 用户执行):
- curl --proto ‘=https’ --tlsv1.2 -sSf https://sh.rustup.rs | sh
- 按提示选择默认安装(选项 1),完成后执行:source $HOME/.cargo/env
- 验证安装:
- rustc -Vv(查看编译器版本与详细信息)
- cargo -V(查看包管理器版本)
- which rustc / which cargo(应指向 ~/.cargo/bin)
- 说明:rustup 默认将工具链与组件安装到用户目录(如 ~/.rustup),不影响系统其他用户。
三 国内镜像加速
- 安装阶段加速(可选):在执行安装脚本前设置环境变量,使用 USTC 镜像
- export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
- export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup
- 包索引与下载加速(crates.io):创建或编辑 ~/.cargo/config.toml
- 使用 清华大学 镜像:
- [registries]
- crates-io = { index = “https://mirrors.tuna.tsinghua.edu.cn/crates.io-index” }
- 或使用 USTC 镜像(git 协议):
- [source.crates-io]
- [source.ustc]
- registry = “git://mirrors.ustc.edu.cn/crates.io-index”
- 提示:镜像仅加速索引/下载,不改变编译结果;若镜像不稳定,可临时移除相关配置恢复官方源。
四 基础使用与项目工作流
- 创建与运行项目:
- cargo new hello_world && cd hello_world
- cargo build(构建)
- cargo run(构建并运行)
- 单文件快速编译运行(不使用 Cargo):
- 新建 hello.rs:fn main() { println!(“Hello, Rust”); }
- rustc hello.rs && ./hello
- 常用维护:
- 更新工具链:rustup update
- 切换工具链:rustup default stable|beta|nightly
- 安装组件(如 clippy、rustfmt):rustup component add clippy rustfmt
- 说明:Cargo 是 Rust 的 包管理器与构建工具,随 rustup 一并安装。
五 进阶配置与 IDE 推荐
- 交叉编译示例(嵌入式/RISC-V):
- 查看可用目标:rustup target list
- 安装目标(示例):rustup target add riscv32imac-unknown-none-elf
- 调试器与工具(示例):安装 riscv-none-embed-gdb 或 gdb-multiarch,并可使用 cargo-binutils、llvm-tools-preview 辅助分析。
- VSCode 开发环境(推荐组合):
- 安装扩展:rust-analyzer(语言服务器)、CodeLLDB(调试器)、Code Runner(快速运行)
- 调试配置:在项目中按 F5 自动生成或手动创建 .vscode/launch.json,选择 LLDB 调试目标,即可断点、单步、查看变量。
- 卸载与清理:
- APT 安装:sudo apt remove rustc && sudo apt autoremove -y
- rustup 安装:rustup self uninstall(按提示移除用户级工具链与配置)