ccache能够有效的提高Linux内核编译的速度
网上有关于ccache的使用不是很详细,对于小白不太友好,这里作者整理了一下。
1. 首先sudo apt-get install ccache 进行安装
2. 使用 vim ~/.bashrc或者gedit ~/.bashrc打开bashrc配置文件即可
3. 将下列代码块复制到bashrc文件的末尾
(注意这CCACHE_DIR中的ubuntu指的是你的当前系统用户名)
export USE_CCACHE=1
export CCACHE_DIR="/home/ubuntu/.ccache"
export CC="ccache gcc"
export CXX="ccache g++"
export PATH="$PATH:/usr/lib/ccache"
4. 使用source ~/.bashrc 使配置生效
5. 检查,使用which g++,若输出的为/usr/lib/ccache则成功
注意:
内核态和用户态下的ccache并不相通
用户态下看到的是/usr/lib/ccache/g++
内核态下看到的是/usr/bin/g++(我的系统是这样显示的)
6. 使用ccache -M 50G来调整一下ccache的大小
(50G是根据自己需求大小来调整的)
7. 使用方法:
编译普通c文件:输入ccache gcc xxx(gcc xxx为正常gcc编译命令)
编译内核: 切换到root,进入到你的Linux源码包
使用make语句时加上CC='ccache gcc'
即make CC='ccache gcc'
(末尾可以加上 -j4 以更快的速度编译,前提cpu为四核)
8. ccache实际上是利用了缓存机制来加速内核的编译,
将编译过程中使用到gcc/g++编译的部分保存下来,
再次编译时则会跳过已编译且无更改的部分。
10. 初次使用时编译时间还没有改变,
但是以后再编译时时间就会快很多
(若更改了虚拟机的配置,可能会要重新配置ccache)
亲测内核编译从原本的55分钟变为了15分钟,爽啊!
11. 当然使用ccache也是会有缺点的,不过对正常使用的影响一般来说并不算
大, 使用ccache之后能看到内存和磁盘的使用率会有显著的提高,对于内存偏小的
朋友需要谨慎使用ccache,否则可能会造成物理机无法正常使用。