![Ccache 在内核构建期间仅命中一次](https://linux22.com/image/72068/Ccache%20%E5%9C%A8%E5%86%85%E6%A0%B8%E6%9E%84%E5%BB%BA%E6%9C%9F%E9%97%B4%E4%BB%85%E5%91%BD%E4%B8%AD%E4%B8%80%E6%AC%A1.png)
我安装并设置了 ccache 并用它构建了内核。以下是统计数据:
cache directory /home/marcin/.ccache
cache hit (direct) 1
cache hit (preprocessed) 0
cache miss 15878
called for link 31
called for preprocessing 2655
unsupported source language 102
no input file 4733
files in cache 35882
cache size 2.7 Gbytes
max cache size 3.0 Gbytes
为什么 ccache 对我来说效率这么低?为什么我会错过这么多次?
答案1
ccache
如果多次编译相同的代码,只会减少编译时间;在编译项目一次时(几乎)只看到缓存未命中是完全正常的,因为正在编译的代码尚未被缓存。