首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对不同目录中的同一个文件具有ccache链接

对不同目录中的同一个文件具有ccache链接
EN

Stack Overflow用户
提问于 2017-04-11 22:07:03
回答 1查看 838关注 0票数 2

我将ccachegit-worktree结合使用。因此,许多相同的文件在多个目录中共享。问题是,ccache不检查文件是否相同,并再次编译。是否有一个ccache选项允许它检查跨多个源目录的缓存?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-13 18:39:32

如果使用-g,则ccache (默认情况下为3.3版本)将当前工作目录添加到哈希中,这只会使在同一个源目录中获得缓存命中成为可能。另一个类似的问题是,如果在编译器参数中使用绝对路径,则需要使用base_dir配置设置。

在ccache手册中的“在不同目录中编译”一节提供的更多细节

  • 如果使用-g (或类似的)构建将调试信息添加到对象文件,则必须:
代码语言:javascript
复制
1. use the `-fdebug-prefix-map=old=new` option for relocating debug info to a common prefix (e.g. `-fdebug-prefix-map=$PWD=.`); or
2. set `hash_dir = false`.

  • 如果在命令行的任何位置使用绝对路径(例如源代码文件路径或编译器选项(如-I-MF)的参数),则必须将base_dir设置为“基本目录”的绝对路径。然后,ccache将在计算哈希之前将该目录下的绝对路径重写为相对路径。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43357006

复制
相关文章

相似问题

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