1. 设置环境变量,从使用环境变量的make工具开始,影响使用使用该环境变量的工具程序,如make
export CC="ccache gcc"
export CXX="ccache g++"
方法2:从gcc等编译器开始,影响较大
在PATH中将/usr/lib/ccache/放在/usr/bin/前面(推荐)
原理,比如make编译工具使用gcc是实际上会使用/usr/lib/ccache/gcc,/usr/lib/ccache/gcc实际是一个到/usr/bin/ccache的软连接,
这样就实现了ccache的调用
测试方法二是否成功的方法,gcc不编译文件,直接输入gcc,
然后查看ccache -s中no input file的次数是不是增加
2. make编译工具在编译文件前,会读取环境变量CC,作为自己的编译器,来c文件
如果CC为空,默认使用gcc
如果不为空,那么使用环境变量中指定的编译器
3. 这样make工具编译每个文件都会使用ccache编译来高速缓存头文件。
这样设置后,g++编译c++文件不会被ccache缓存,需要export CXX="ccache g++"吗?
4. android2.3以后的源码(不知道从哪个版本开始)中,已经自带了ccache
位置:$ANROID_SRC/prebuilt/linux-x86/ccache
所以,即使host系统中没有安装ccache,也可以使用ccache
使用方法:
exportUSE_CCACHE=1