---
name: "compilercache"
section: "1"
platform: "linux"
package: "compilercache"
version: "1.0.10-4"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/compilercache"
---

# compilercache(1)

a caching wrapper around compilers to speed up compilations

## NAME

compilercache - a caching wrapper around compilers to speed up compilations

## SYNOPSIS

**/usr/lib/compilercache/cc** \[*options*\] *files*...\
 **/usr/lib/compilercache/gcc** \[*options*\] *files*...\
 **/usr/lib/compilercache/c++** \[*options*\] *files*...\
 **/usr/lib/compilercache/g++** \[*options*\] *files*...

## DESCRIPTION

**Compilercache** is a set of wrappers around C and C++ compilers. Each time you compile something, the wrapper puts the result of the compilation into a cache. And once you compile the same thing again, the result will be picked from the cache instead of being recompiled.

There are three design criteria in **compilercache**, shown in descending order of priority:

- 1\)

  the compilercache may NEVER return an output file that is not bitwise the same as if the original compiler would have been run.

- 2\)

  the compilercache shall do exactly the same thing as the original compiler, only the time consumption is sometimes much less.

- 3\)

  the compilercache shall use the files from the cache as often as possible and not unnecessarily recompile.

It is absolutely top priority that 1) and 2) are ALWAYS met under ALL circumstances.

## USAGE

To use **compilercache** you should call the commands in */usr/lib/compilercache* instead of the regular compilers.  The easiest way to do so, is to add */usr/lib/compilercache* to the PATH variable.  For Bourne-Shell variants this is done with a command like

*PATH="/usr/lib/compilercache:$PATH"*

To hook new compilers into the **compilercache** system, just add the corresponding link in */usr/lib/compilercache* (or in *$COMPILERCACHEBINDIR* if this ist set).  Example: to add gcc-3.2 support you could use the commands

*cd /usr/lib/compilercache*\
 *ln -s compilercache gcc-3.2*\
 *ln -s compilercache g++-3.2*

## FILES

- */etc/compilercacherc*

  system wide configuration file.

- *$HOME/.compilercacherc*

  per user configuration file.

- *$(HOME)/.compilercache/cache/*

  default cache location.  If it grows too large, you may remove files from this directory without ill effects.

- *$(HOME)/.compilercache/temp/*

  default location for temporary files.

## ENVIRONMENT

If you set the *NOCOMPILERCACHE* environment variable, the cache will not be used.  This helps to temporarily disable compilercache without modifying the configuration file.

## SEE ALSO

*/usr/share/doc/compilercache/README.gz*

## AUTHOR

**Compilercache** was written by Erik Thiele \<erikyyy@erikyyy.de\>.

This manual page was written by Jochen Voss \<voss@debian.org\>.
