如何设置共享ccache
-
02-07-2019 - |
题
如何设置共享ccache而不会遇到权限问题?
我想运行带有最新更改的夜间或CI构建,并使用大型ccache存储库在整个R& D中共享所有创建的二进制文件。
解决方案
最简单的解决方案:创建一个新组(例如“devel”),并使所有开发人员成为其中的成员。在维护缓存的目录层次结构上为该组授予读/写权限。开发人员还需要修复他们的umask。
其他提示
请参阅ccache手册中新写的共享缓存部分。实质上,使用相同的 CCACHE_DIR
设置,适当地设置 CCACHE_UMASK
并考虑使用 CCACHE_BASEDIR
。
如果您还使用相关的 distcc ,那么许可问题将在很大程度上消失,因为编辑将在你设置的任何编译农场主机的控制下运行。
您还可以在distcc主机中包含开发人员桌面计算机,但代价是有一些重复的工作,其中文件可能会在多台计算机上编译 - 尽管它永远不会返回过时的编译对象文件。它还可以加快日常的重新编译。
你也可以看看Mozilla的 sccache ,它是一个类似ccache的工具,可以在云存储中存储构建工件(GCS / S3 / Azure或redis / memcached)。
请参阅 xcache 。
它是ccache-cloud,已经在阿里巴巴使用,效率很高。
如果您使用的是ccache,那么切换到xcache非常容易。
不隶属于 StackOverflow