Rust 编译加速优化方案
1. 核心优化配置 在项目根目录或全局路径 ~/.cargo/config.toml 中添加以下内容: 1 2 3 4 5 6 7 8 9 [build] # 1. 开启增量编译:复用中间产物,仅重编修改部分 incremental = true # 2. 多线程并行编译:将 crate 拆分为 16 个单元并行处理 rustflags = ["-C", "codegen-units=16"] # 3. 编译器缓存:使用 sccache 避免重复编译未变动的依赖 rustc-wrapper = "sccache" 2. 详细说明与权衡 ① 增量编译 (Incremental) 作用:类似“只重烤焦的那层蛋糕”,不再从头开始。 适用场景:本地开发环境。 注意:在 CI 或生产环境发布构建时建议关闭(设置 CARGO_INCREMENTAL=0),以保证产物的确定性。 ② 代码生成单元 (Codegen Units) 作用:将顺序编译拆分为多线程并行。 效果:在 8 核及以上机器效果极其明显。 代价:由于跨单元优化减少,运行时性能可能微降 (1-2%)。建议: 开发环境:设置为 16。 发布版本:调低至 1 或 4 以保证极致性能。 ③ sccache (Mozilla 缓存工具) 作用:全局缓存编译产物,跨项目复用。 效果:只要依赖项未变,直接从缓存拉取,零等待。 3. 快速设置步骤 第一步:安装 sccache 1 cargo install sccache 第二步:配置环境变量 (可选) 除了修改 config.toml,也可以直接在 Shell 配置文件中加入: ...