首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ccache与jenkins管道

使用ccache与jenkins管道
EN

Stack Overflow用户
提问于 2017-08-21 17:48:41
回答 1查看 2K关注 0票数 4

在我的jenkins管道构建中,我很难从ccache中获得一致的好处。我将CCACHE_BASEDIR设置为当前构建目录的父目录(这适用于类似于/opt/jenkins/workspace的内容)。鉴于这一基础,我希望所有公共关系/分支构建,共享这个共同的父,能够找到命中缓存,但遗憾的是,他们没有。我确实看到了给定目录中后续构建的缓存命中(例如,如果我手动重新构建特定的PR ),这意味着CCACHE_BASEDIR并不像我所期望的那样工作。

为了进一步诊断,我尝试设置CCACHE_LOGFILE,尽管该文件是由构建生成的,但它实际上是空的(它只包含两行指示ccache版本的行)。

有人能提出一些特定的设置或技术,以便从jenkins管道中的ccache中获得最大的利益,或者其他一些尝试诊断问题的方法吗?什么会导致空的ccache日志文件?

我运行的是ccache 3.3.4。

EN

回答 1

Stack Overflow用户

发布于 2018-02-13 20:05:35

这个问题的第一部分的解决方案可能是设置hash_dir = false (如果使用环境变量的话是CCACHE_NOHASHDIR=1),或者设置-fdebug-prefix-map=old=new来将调试信息重新定位到一个公共前缀(例如-fdebug-prefix-map=$PWD=.)。更多细节可以在在ccache手册中的“在不同目录中编译”一节中找到。

关于CCACHE_LOGFILE:我以前从未听说过这个问题(我是ccache维护者,BTW),但是如果您将CCACHE_LOGFILE设置为相对文件路径,请尝试将其设置为绝对路径。

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

https://stackoverflow.com/questions/45802970

复制
相关文章

相似问题

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