首页 > 代码库 > android 编译共享ccache的缓存

android 编译共享ccache的缓存

1. android自带的ccache版本(2.4版本)过低,是无法支持以上的功能的,需要使用新版ccache。
2. 最新的ccache请到http://ccache.samba.org/download.html下载
3. 下载解压之后,在linux底下进入ccache目录,运行:
  ./configure
  ./make
  ./strip --strip-all ccache
4. 之后就可以在ccache目录下看到ccache文件,拿这个文件替换掉codebase里的alps/prebuilts/misc/linux-x86/ccache/ccache文件。
5. 请重复执行第4步将所有codebase的ccache替换掉(保证所有使用ccache缓存的ccache都是最新版本,因为不同版本的ccache生成的缓存无法共享!)
6. 所有需要共享的用户请添加以下环境变量:
  export CCACHE_DIR=<ccache缓存路径>
  export CACHE_UMASK=002
  unset CCACHE_HARDLINK
  可以将以上添加到$HOME/.bashrc,保证打开的终端都已经加载以上的环境变量。其中<ccache缓存路径>请替换为指定的绝对路径(必须是需要共享的用户都能读写的)。比如:/proj/.ccache
  注意:由于多人同时写ccache缓存可能引起IO带宽不够反而降低效率,强烈建议服务器编译可以按第6步配置,但是其他共享用户最好在第6步的基础上增加export CCACHE_READONLY=1仅只读缓存内容。
7. 设置好第6步后,重新登入终端使环境变量生效,然后创建<ccache缓存路径>,设置<ccache缓存路径>的共享权限,在终端输入:find $CCACHE_DIR -type d | xargs chmod g+s
8. 完成前面的步骤后,就可以开始共享使用了,注意ccache空间要足够大,否则反而拉长编译时间。如果遇到问题可以参考ccache的使用说明:http://ccache.samba.org/manual.html

android 编译共享ccache的缓存