安装 sccache

发布时间:2026/8/4 2:31:05
安装 sccache sccache是 Mozilla 开源的一款编译缓存工具——可以把它理解为ccache的现代化升级版。它是干什么的编译 C/CUDA 项目时编译器每次都要从头处理每个源文件。但实际开发中你改一行代码重新编译99% 的源文件内容没变编译结果其实可以直接复用。sccache 就是干这个的原始流程: 源码 → 编译器(慢) → .o 缓存流程: 源码 → sccache 算哈希 → 命中? 直接取出缓存的 .o (毫秒级) ↘ 未命中 → 调编译器编译 → 存入缓存它包装在编译器外面作为CMAKE_C_COMPILER_LAUNCHER对构建系统透明。和 ccache 的区别ccachesccache作者/背景传统老牌工具Mozilla 开发Rust 编写语言支持C/C 为主C/C、Rust、NVCCCUDA缓存存储仅本地磁盘本地磁盘、S3、GCS、Azure、Redis分布式共享缓存弱需 NFS 等原生支持——团队/CI 共享一份云端缓存比如像 Holoscan 这种 CUDA 重型项目选 sccache 的原因很明确支持 NVCC且官方 CI 和./run容器环境用它做共享缓存。你为什么会遇到这个错误HOLOSCAN_USE_SCCACHEON是默认开启的Holoscan 的 CMake 默认值官方预期在./run构建容器里干活——容器镜像里已经预装了 sccache。而现在走的是**本地环境 CMake裸机路线**文档里标记为未积极维护的高级方式宿主机上没装这个工具CMake 配置阶段就报错了。两种解决办法办法一直接关掉简单直接推荐先用这个第一次本地构建缓存没有也照样编译只是慢点cmake-S~/ex_holoscan/tmp01/holoscan-sdk-Bbuild-cu13-x86_64\-GNinja\-DCMAKE_BUILD_TYPERelease\-DCUDAToolkit_ROOT:PATH/usr/local/cuda\-DHOLOSCAN_USE_SCCACHEOFF如果之前配置过删掉旧缓存重来rm -rf build-cu13-x86_64。办法二安装 sccache如果你想加速后续反复构建# 方式 A直接下官方预编译二进制最快wgethttps://github.com/mozilla/sccache/releases/download/v0.17.0/sccache-v0.17.0-x86_64-unknown-linux-musl.tar.gztarxzf sccache-*.tar.gzsudocpsccache-*/sccache /usr/local/bin/ sccache--version# 方式 B有 Rust 工具链的话cargoinstallsccache--locked# 方式 Csnapsudosnapinstallsccache装好后正常走 CMake 配置即可不用加OFF开关。首次构建慢缓存冷改代码后二次构建会快非常多——对 Holoscan 这种规模的项目全量编译几十分钟命中缓存的增量编译可能只要几分钟。建议如果只是验证性地编一次 SDK用办法一如果准备长期在裸机上迭代开发 Holoscan值得花两分钟装上 sccache办法二它对 NVCC 编译的加速效果尤其明显。