ccache - кэш компилятора
Использование ссache может значительно ускорить сборку пакетов, которые компилируются несколько раз, так как заново компилироваться будут только файлы, которые изменились с последней компиляции.
Принцип работы
При компилировании какого-либо файла вычисляется его хэш и, если такой файл уже присутствует в реестре скомпилированных файлов, то он не будет компилироваться заново, а будет использоваться старый бинарный файл. Это может ускорить сборку некоторых пакетов в 5—10 раз. При этом учитываются разные версии компилятора и опции сборки. Это означает, что, если вы однажды собрали проект с оптимизацией -О2, использовав при этом ссache, то при сборке с оптимизацией -О3 файл будет компилироваться заново, при этом в реестре ссache старый файл сохранится, но добавится и новый.
Использование в Gentoo
Для начала установите ccache: emerge -av dev-util/ccache
Затем пропишите опции в /etc/make.conf:
FEATURES="ccache" CCACHE_DIR="/var/cache/ccache" # каталог, в котором будет находиться кэш ccache CCACHE_SIZE="2G" # максимальный размер кэша
Посмотреть статистику можно командой:
CCACHE_DIR="/var/cache/ccache" ccache -s
UPD:
Если вы собираете ядро вручную, то запускайте make в виде: make CC=/usr/lib/ccache/bin/gcc. А еще полезно передать параметр -j, такой же, какой у вас в /etc/make.conf, например: make -j5 CC="/usr/lib/ccache/bin/gcc". А если вы также используете distcc, то вот так:
make -j5 CC="/usr/lib/ccache/bin/gcc /usr/lib/distcc/bin/gcc"
Еще нет отзывов
Идет загрузка формы...