首先通过rustup安装最新稳定版Rust(包含rustc编译器和cargo包管理器),并配置国内镜像源加速下载:

# 设置国内镜像源(可选但推荐)export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustupexport RUSTUP_DIST_SERVER=https://mirrors.tuna.tsinghua.edu.cn/rustup# 安装rustupcurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh# 添加cargo到PATH(首次安装后需执行)source ~/.cargo/env安装Ubuntu所需的编译工具链(build-essential包含gcc、make等):
sudo apt update && sudo apt install -y build-essential curl修改~/.cargo/config.toml(若不存在则新建),将依赖仓库替换为国内镜像(如中科大),加速cargo build时的依赖下载:
[source.crates-io]replace-with = 'ustc'[registries.ustc]index = "https://mirrors.ustc.edu.cn/crates.io-index/"Rust团队持续优化编译器性能,定期升级至最新稳定版可获得更好的编译速度和代码优化:
rustup update stablecargo check代替cargo build,仅检查语法和类型错误,不生成可执行文件,速度提升约3-5倍。cargo build --release,启用LLVM优化(opt-level=3)、链接时优化(LTO)等,生成的二进制文件性能更高(但编译时间更长)。Rust默认开启增量编译(仅重新编译修改过的文件),确保Cargo.toml中[profile.dev]的incremental设置为true(默认值):
[profile.dev]incremental = true# 保持默认即可安装sccache(分布式编译缓存),缓存编译结果以减少重复编译时间:
# 安装sccachecargo install sccache# 设置环境变量,让cargo使用sccache作为编译器包装器export RUSTC_WRAPPER=$(which sccache)codegen-units增加并行编译的任务数,提升编译速度(但可能轻微降低运行时性能):[profile.dev]codegen-units = 16# 默认是16,可根据CPU核心数调整(如32)RUSTFLAGS="-Z threads=8" cargo +nightly build# 使用8个线程使用mold(现代链接器)替代默认的ld,可显著缩短链接时间(尤其对大型项目效果明显):
# 安装mold(Ubuntu 22.04+可通过apt安装)sudo apt install -y mold# 设置环境变量,让rustc使用mold作为链接器export RUSTC_LINKER=mold使用cargo-udeps工具检测并移除项目中未使用的依赖项,减少编译时间和二进制文件体积:
# 安装cargo-udepscargo install cargo-udeps# 检测未使用依赖cargo +nightly udeps# 手动移除检测到的无用依赖(在Cargo.toml中删除对应项)使用cargo tree工具查看依赖关系,识别并解决重复依赖或嵌套过深的问题:
# 安装cargo-treecargo install cargo-tree# 查看依赖树cargo tree# 示例:移除重复的serde依赖(若有)通过以上步骤,可显著提升Rust项目在Ubuntu上的编译效率,兼顾开发时的快速迭代和生产环境的性能需求。