Sla*_*iro 2 android ccache android-source
我正在构建服务器上编译 AOSP 8.1.0 源代码树。我使用 Ubuntu 16.04 所需的所有软件包制作了一个 docker 映像。我在启动 docker 镜像时挂载了源树、ANDROID_OUT 和 ccache 目录。这三个目录在docker中的路径是一样的:
来源:/home/builder/android_source/AOSP_8.1/
输出:/home/builder/android_out/AOSP_8.1/
ccache: /home/builder/ccache/
问题是我不明白 ccache 的行为方式。如果我watch ccache -s在编译 android 时运行,我会看到如下内容:
files in cache: 10365
cache size: 931.9MB
Run Code Online (Sandbox Code Playgroud)
这些值之后的几秒钟可以增加或减少。我已将最大缓存大小设置为 30GB,ccache -s告诉我这是正确的最大大小,但缓存大小从未超过 1Gb。我在 5 次构建之后看到的最大大小约为 983MB。
我尝试了什么?
1) chown -R builder:builder ~/ccache/
2)ccache -M 30G在码头。最大大小设置为 30GB,行为保持不变。
3) ccache -C- 缓存清除,没有什么好转的。
我的 ccache 有什么问题?
出于某种奇怪的原因,这种情况是由于系统 ccache 和 android ccache 之间的某些不兼容造成的。做完之后
ccache -M 50G
Run Code Online (Sandbox Code Playgroud)
使用 android 源目录中的 ccache 实用程序,一切正常。
如果有人仍然感兴趣,答案是这样的:
Android:
prebuilts/misc/linux-x86/ccache/ccache -M 50GB 将 50GB 存储为 50*65536 到第 15 行的 /0 到 f/stats。
Gnu:
/usr/bin/ccache 工具按照手册中的说明保留: /ccache.conf(通常为 /etc/ccache.conf 或 /usr/local/etc/ccache.conf )或 /ccache.conf(通常为 $ HOME/.ccache/ccache.conf) 作为人类英文文本:max_size = 50GB
因此,每个工具都将其保存在不同的位置。但是安卓没有说明书。
| 归档时间: |
|
| 查看次数: |
2821 次 |
| 最近记录: |