Ubuntu 上选择 Rust 工具链的建议
一 版本类型与适用场景
二 安装与切换工具链
sudo apt update && sudo apt install -y curl build-essentialcurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shsource $HOME/.cargo/envrustc --version、cargo --versionrustup install stable|beta|nightly、rustup default stablerustup override set nightly(仅当前项目使用 Nightly)rustup updaterustup showsudo apt install rustc cargo),但通常版本较旧且难以多版本共存;如需较新版本,可添加 Rust 官方 APT 源,但灵活度仍不如 rustup。三 按场景给出选择方案
| 场景 | 推荐工具链 | 关键配置 | 备注 |
|---|---|---|---|
| 学习/入门 | Stable | rustup default stable |
文档与社区支持最好,避免特性变动干扰 |
| 生产服务 | Stable | 结合 Cargo.toml 锁定依赖版本;构建用 cargo build --release |
稳定性与可维护性优先 |
| 尝鲜新特性 | Beta(必要时 Nightly) | 建议仅项目级:rustup override set beta |
预期会有少量问题,回退成本低 |
| 需要实验性特性 | Nightly | 项目级覆盖 + 明确特性开关 | 关注编译与依赖兼容性 |
| 跨架构交叉编译 | 主机 Stable + 目标 target | rustup target add <target>;必要时设置链接器 |
见下方目标与链接器小节 |
| 生成高度可移植二进制 | Stable + musl | rustup target add x86_64-unknown-linux-musl |
静态链接,减少外部依赖 |
| 服务器部署与自启 | Stable | 构建:cargo build --release;用 systemd 管理进程 |
生产常用做法 |
四 目标平台与交叉编译要点
rustup showrustup target add <target>(如 aarch64-unknown-linux-gnu、armv7-unknown-linux-gnueabihf、x86_64-unknown-linux-musl)rustup target add x86_64-pc-windows-gnuexport CARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER=x86_64-w64-mingw32-gcc五 常见问题与实用建议
sudo apt install build-essential。export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-staticexport RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustuprustup update;检查更新:rustup check。rustup doc / rustup doc --book / rustup doc --std。