edit this article

Speeding up compiles with ccache

The tool ccache is able to speed up recompilations of the same sources by caching the gcc outputs into cache files. If ccache detects a recompilation of a file it has in cache, the cache files get returned.

The use of ccache is transparent to the end user except that some compiles are faster.

It uses ~/.ccache as its storage place.

If you want to speed up ccache, mount a reiserfs partition to that ccache directory.

Reiserfs is very fast when dealing with small files and this makes it very usefull for ccache.

From the ccache man-page


There are two ways to use ccache. You can either prefix your compile commands with "ccache" or you can create a symbolic link between ccache and the names of your compilers. The first method is most convenient if you just want to try out ccache or wish to use it for some specific projects. The second method is most useful for when you wish to use ccache for all your compiles.

To install for usage by the first method just copy ccache to somewhere in your path.

To install for the second method do something like this:

  cp ccache /usr/local/bin/  
ln -s /usr/local/bin/ccache /usr/local/bin/gcc
ln -s /usr/local/bin/ccache /usr/local/bin/g++
ln -s /usr/local/bin/ccache /usr/local/bin/cc

This will work as long as /usr/local/bin comes before the path to gcc (which is usually in /usr/bin). After installing you may wish to run "which gcc" to make sure that the correct link is being used.

Note! Do not use a hard link, use a symbolic link. A hardlink will cause "interesting" problems.

rate this article:
current rating: average rating: 1.3 (69 votes) (1=very good 6=terrible)
Your rating:
Very good (1) Good (2) ok (3) average (4) bad (5) terrible (6)