Debian系统可以通过 ccache(编译缓存工具)显著加速重复编译过程,尤其适用于大型项目或频繁修改代码的开发场景。
ccache通过缓存编译生成的中间文件(如目标文件、依赖关系等),当再次编译相同代码时,直接复用缓存结果,跳过重复的预处理、编译步骤,大幅减少编译时间。首次编译速度较慢(需生成缓存),但后续编译速度可提升数倍甚至数十倍。
通过Debian官方软件源直接安装,命令如下:
sudo apt update
sudo apt install ccache
安装完成后,系统会自动识别ccache,可通过gcc -v命令验证(输出中包含“using ccache”字样)。
为方便使用,建议将ccache路径添加到系统环境变量中。编辑~/.bashrc(或~/.profile)文件,添加以下内容:
export PATH="/usr/lib/ccache:$PATH"
保存后执行source ~/.bashrc使配置生效。此步骤会将ccache置于GCC命令搜索路径的前端,后续使用gcc/g++命令时会自动调用ccache。
编译时用ccache gcc代替gcc,例如:
ccache gcc -O2 -Wall -o myprogram myprogram.c
为简化操作,可在~/.bashrc中添加别名:
alias gcc='ccache gcc'
alias g++='ccache g++'
此后直接使用gcc/g++命令即可自动启用ccache。
使用ccache -s命令查看缓存命中率、存储大小等信息,例如:
$ ccache -s
cache directory /home/user/.ccache
primary config /home/user/.ccache/ccache.conf
secondary config (readonly) /etc/ccache.conf
cache hit (direct) 10
cache hit (preprocessed) 0
cache miss 5
files in cache 15
cache size 1.2 MB
max cache size 5.0 GB
ccache -M调整最大大小(如ccache -M 2G设置2GB上限)。export CCACHE_DIR=/path/to/cache指定缓存存储路径(默认为~/.ccache);ccache -M设置最大缓存容量(如ccache -M 4G),避免缓存占用过多磁盘空间。make -j$(nproc)(并行编译)使用,可进一步提升编译效率(如ccache gcc -j4)。