ccache って?

ccache はプログラムのコンパイル時の中間結果を保存して再利用することが出来るユーティリティです。

インストール

portinstall でインストール。

% sudo portinstall devel/ccache

インストールの終わりに下記のように表示されます。

=== NOTE ===
Please read /usr/local/share/doc/ccache/ccache-howto-freebsd.txt for
information on using ccache with FreeBSD ports and src.

distccと併用しない場合

make.conf の設定

上記のインフォメーションに目を通して設定します。

% sudoedit /etc/make.conf
.if exists(/usr/local/libexec/ccache) && \
	!empty(.CURDIR:M/usr/ports*) && \
	!defined(NOCCACHE)
CC=/usr/local/libexec/ccache/world-cc
CXX=/usr/local/libexec/ccache/world-c++
.endif

csh/tcsh の環境変数を設定

csh/tcsh をお使いの方は /etc/csh.cshrc の設定を行います。

% sudoedit /etc/csh.cshrc
setenv PATH /usr/local/libexec/ccache:$PATH
setenv CCACHE_PATH /usr/bin:/usr/local/bin
setenv CCACHE_DIR "/var/db/ccache"
setenv CCACHE_LOGFILE "/var/log/ccache.log"

sh/bash/zsh の環境変数を設定

sh/bash/zsh をお使いの方は /etc/profile の設定を行います。

% sudoedit /etc/profile
export PATH="/usr/local/libexec/ccache:${PATH}"
export CCACHE_PATH="/usr/bin:/usr/local/bin"
export CCACHE_DIR="/var/db/ccache"
export CCACHE_LOGFILE="/var/log/ccache.log"

キャッシュディレクトリの作成

キャッシュを保存しておくディレクトリを作成しておきます。

% sudo mkdir -p /var/db/ccache