Ccache позволяет увеличить скорость повторной сборки программы за счет кэширования промежуточных данных. Во FreeBSD ccache можно установить из портов:
cd /usr/ports/devel/ccache && make install clean
Далее включаем ccache при сборке системы, в /etc/make.conf добавляем:
.if !defined(NO_CACHE)
CC= /usr/local/libexec/ccache/world-cc
CCX= /usr/local/libexec/ccache/world-c++
.endif
.if ${.CURDIR:M*/ports/devel/ccache}
NO_CCACHE= yes
.endif
Конфигурируем ccache через переменные окружения, в .cshrc добавляем:
setenv PATH /usr/local/libexec/ccache:$PATH
setenv CCACHE_PATH /usr/bin:/usr/local/bin
setenv CCACHE_DIR /var/tmp/ccache
setenv CCACHE_LOGFILE /var/log/ccache.log
if ( -x /usr/local/bin/ccache ) then
/usr/local/bin/ccache -M 512m > /dev/null
endif
Через опцию "-M" мы определили максимальный размер кэша (по умолчанию 1Гб),
кэш будет размещен в /var/tmp/ccache (по умолчанию в /root/.ccache)
Состояние кэша можно посмотреть командой:
ccache -s
При повторном выполнении make buildworld, время сборки с ccache уменьшилось в 4 раза.
Для еще большего увеличения скорости кэш рекомендуется расширить до 4 Гб.
Для индивидуальной отмены кэширования при сборке порта можно использовать:
make NO_CACHE=yes install clean
URL: http://forums.freebsd.org/showthread.php?t=174
Обсуждается: http://www.opennet.dev/tips/info/1905.shtml