首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么时候使用ccache?

什么时候使用ccache?
EN

Stack Overflow用户
提问于 2012-04-13 07:19:20
回答 2查看 2.1K关注 0票数 11

据我所知,ccache通过捕获以前的编译并检测同一编译何时再次执行来加快编译速度。然而,makefile也做同样的事情。那么为什么我们需要ccache呢?我们什么时候用它?谢谢!

EN

回答 2

Stack Overflow用户

发布于 2017-07-27 08:55:16

除了由于构建系统崩溃而需要加快干净构建的可疑好处,以及拥有共享缓存的意外好处之外,ccache也有合法的使用,即使是针对一个独立的、无缺陷的基于mtime的构建系统:

当您在分支之间来回跳(而不是谈论单独的目录)或重基时,您最终会接触到一大堆文件,或者如果您运气不佳,一个包含在各处的中心标头(如config.h),您的完美的基于mtime的构建系统将尽职尽责地重建所有内容。如果您在过去的某个时候已经构建了大部分相同的状态,ccache将加速此重建。

票数 6
EN

Stack Overflow用户

发布于 2012-04-13 07:22:08

来自http://ccache.samba.org/

--如果您曾经运行过make clean; make,您可能会从ccache中受益。对于开发人员来说,出于一系列原因,对项目进行干净的构建是很常见的,这就抛弃了以前编译过程中的所有信息。通过使用ccache,重新编译速度要快得多。

使用ccache的另一个原因是相同的缓存用于不同目录中的构建。如果软件的多个版本或分支存储在不同的目录中,那么构建目录中的许多对象文件可能会从缓存中取出,即使它们是为另一个版本或分支编译的。

第三种情况是使用ccache来加速由服务器执行的干净构建,或者定期检查代码是否可构建的构建场。

您还可以在用户之间共享缓存,这在共享编译服务器上非常有用。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10136761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档