Mar 302017
 

节省编译时间的工具
Tools save compiling time

最近发现编译C++程序很花时间。
比如说仅仅编译一个用了模版库的程序需要花10秒。
为了加快开发速度,我想找一个能提高单机编译速度的程序。结果如下:

Benchmark
ProgramUserTime (s)SysTime (s)RealTime (s)Memory (kB)
g++-4.9.4137.35u10.11s56.44r1392268kB
clang++-4.093.24u6.56s36.21r949524kB
zapcc++-1.01.81u0.57s33.95r39888kB
ccache-g++ (1st)109.62u9.01s49.43r1392392kB
ccache-g++ (2nd)1.47u0.87s1.67r55832kB

结论:
从编译速度来看,首次编译速度最快的是zapcc(不免费)和clang(免费),耗时~35秒左右,比g++快40%。
重复编译的时候ccache最快,提速10倍以上。

注:表中zapcc的用户时间很短,内容占用少,这是因为它是起动其他进程去真正编译,其他程序的用户时间和内存使用没有被计入。