news 2026/8/4 2:30:58

安装 sccache

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
安装 sccache

sccache是 Mozilla 开源的一款编译缓存工具——可以把它理解为ccache的"现代化升级版"。

它是干什么的

编译 C++/CUDA 项目时,编译器每次都要从头处理每个源文件。但实际开发中,你改一行代码重新编译,99% 的源文件内容没变,编译结果其实可以直接复用。sccache 就是干这个的:

原始流程: 源码 → 编译器(慢) → .o 缓存流程: 源码 → sccache 算哈希 → 命中? 直接取出缓存的 .o (毫秒级) ↘ 未命中 → 调编译器编译 → 存入缓存

它包装在编译器外面(作为CMAKE_C_COMPILER_LAUNCHER),对构建系统透明。

和 ccache 的区别

ccachesccache
作者/背景传统老牌工具Mozilla 开发,Rust 编写
语言支持C/C++ 为主C/C++、RustNVCC(CUDA)
缓存存储仅本地磁盘本地磁盘、S3、GCS、Azure、Redis
分布式共享缓存弱(需 NFS 等)原生支持——团队/CI 共享一份云端缓存

比如,像 Holoscan 这种 CUDA 重型项目选 sccache 的原因很明确:支持 NVCC,且官方 CI 和./run容器环境用它做共享缓存。

你为什么会遇到这个错误

HOLOSCAN_USE_SCCACHE=ON是默认开启的(Holoscan 的 CMake 默认值),官方预期在./run构建容器里干活——容器镜像里已经预装了 sccache。而现在走的是**"本地环境 + CMake"裸机路线**(文档里标记为"未积极维护"的高级方式),宿主机上没装这个工具,CMake 配置阶段就报错了。

两种解决办法

办法一:直接关掉(简单直接,推荐先用这个)

第一次本地构建,缓存没有也照样编译,只是慢点:

cmake-S~/ex_holoscan/tmp01/holoscan-sdk-Bbuild-cu13-x86_64\-GNinja\-DCMAKE_BUILD_TYPE=Release\-DCUDAToolkit_ROOT:PATH="/usr/local/cuda"\-DHOLOSCAN_USE_SCCACHE=OFF

如果之前配置过,删掉旧缓存重来: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# 方式 C:snapsudosnapinstallsccache

装好后正常走 CMake 配置即可,不用加OFF开关。首次构建慢(缓存冷),改代码后二次构建会快非常多——对 Holoscan 这种规模的项目,全量编译几十分钟,命中缓存的增量编译可能只要几分钟。

建议:如果只是验证性地编一次 SDK,用办法一;如果准备长期在裸机上迭代开发 Holoscan,值得花两分钟装上 sccache(办法二),它对 NVCC 编译的加速效果尤其明显。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/4 2:30:10

长治酒店客控改造,关注一站式落地与责任界定

长治酒店客控改造:如何甄选具备一站式落地能力的服务商在山西长治地区进行酒店客控系统改造或新建项目的音视频集成时,业主方往往面临一个核心痛点:系统繁多但责任分散。传统的操作模式是将网络弱电、公共广播、客房控制、会议音响分包给不同…

作者头像 李华
网站建设 2026/8/4 2:29:46

长治会议音响选型,结合场地面积匹配适配合适方案

长治会议音响选型与智能弱电集成:如何结合场地面积匹配适配合适方案在长治及周边地区,随着企业数字化转型的深入以及酒店、家庭影音需求的升级,用户在进行会议音响选型及智能化改造时,往往面临系统分散、接口标准不一、售后响应滞…

作者头像 李华
网站建设 2026/8/4 2:28:13

MATLAB实现主从博弈的电动汽车动态定价策略

1. 项目背景与核心问题在智能小区和电动汽车快速普及的背景下,电力资源分配和充电管理成为关键挑战。传统固定电价模式已无法满足动态供需关系,而代理商作为电力市场中介,需要制定既能保证自身收益又能被用户接受的定价策略。主从博弈&#x…

作者头像 李华
网站建设 2026/8/4 2:25:17

AI备课工具横向测评:哪款更适合做教案教学设计?

前言备课是教师教学工作中重要且耗时的环节,一份完整的教学设计、教案文稿、课件内容需要花费大量时间整理打磨。随着AI技术普及,各类AI工具逐步应用于教育备课场景,能够辅助教师完成文案撰写、课件制作、内容优化等工作。目前市面上可用于教…

作者头像 李华
网站建设 2026/8/4 2:25:10

Moneta Markets亿汇:把外汇领域风控思路做到位——细节解读与提示整理

在外汇行业语境里,表达越清晰、信息越透明,越容易建立稳定预期。在Moneta Markets亿汇的外汇服务中,从公开信息与使用体验出发,梳理其更值得肯定的能力点与细节表现。外汇相关平台的价值,体现在长期一致性与信息呈现的…

作者头像 李华
网站建设 2026/8/4 2:23:15

AI大模型如何1小时生成5万token入职方案:提示词工程与链式调用实战

这次我们来看一个很有意思的AI应用场景:创始人用1小时散步生成5万token的入职方案。这听起来像是一个效率神话,但背后揭示的是AI大模型在内容生成、方案策划和结构化输出上的强大能力。它不是一个具体的开源项目,而是一个极具代表性的应用案例…

作者头像 李华