gentoo中利用ccache提高编译速度

什么是ccahe?
ccache 是一个快速的编译器缓存。当您编译一个程序的时候,它会缓存中间的结果。这样,不论什么时候您重新编译同一个程序,编译所需要得时间将被大大缩短。对于普通的编译来说,这可以提高编译速度5到10倍。

这个想法,来自 Erik Thiele 用bash写的 compilercache 。只不过,ccache用C再实现了一遍。但比前者性能高许多,也有更多的特性。

安装 ccache

emerge ccache

使用 ccache
1, 设置启用ccache
在 /etc/make.conf 中设置

FEATURES=”ccache”


2, 指定ccache的主目录
比如,/var/tmp/ccache 是Portage的默认ccache主目录;为了修改这个设置,您可以设定/etc/make.conf 中的CCACHE_DIR 参数。

CCACHE_DIR= /var/tmp/ccache

针对不同的系统环境,可能如上的配置会不生效,保险起见,我们再加一个环境变量配置。
比如,我在 /etc/env.d/99ken.wug(ken.wug是我的机器的名字,可以自定义) 这个文件中,加入

CCACHE_DIR=”/var/tmp/ccache”

3, 设置 ccache 的主缓存大小
设定/etc/make.conf中CCACHE_SIZE, 并设置它为”2G”

CCACHE_SIZE=”2G”

4, ccache 常用指令使用说明
-s 获得关于高速缓存性能的统计数据
gentoo指令截图

-M 设置高速缓存的最大大小
gentoo指令截图
这里默认设置的是 ${HOME}/.ccache 这个目录的缓存大小。

-F 设置高速缓存目录的最大文件数目,按 16 进制舍入
-c 清空缓存
-C 完全清空缓存

转载请注明原文链接:http://kenwublog.com/accelerate-compliation-by-using-ccache

2008/03/21 | Posted in Linux & Gentoo
No comments yet.

Leave a comment

Attention: Java syntax highlighting is enable. For example: <pre lang="java"> class A {} </pre>