Usando CCache no FreeBSD
Posted on January 31st, 2009 in FreeBSD | No Comments »
Acabou de instalar um novo FreeBSD ? Pretende instalar o Xorg e suas aplicações gráficas ? Com certeza vai querer saber sobre o ccache, que garante enorme ganho de velocidade na compilação do código fonte de suas aplicações.
ccache é um compilador cache. Este age como um pré-processador de compiladores C/C++, usando a troca de compilador -E e um hash para detectar quando uma compilação pode ser satisfeita de um cache. Isto normalmente resulta em um ganho de 5 à 10 vezes em compilações comuns.
A seguir temos um tutorial passo-a-passo para habilitar e usar ccache no FreeBSD 7.1:
% su
# cd /usr/ports/devel/ccache
# make install clean
# vim /etc/make.conf
Adicione o seguinte conteúdo:
.if (!empty(.CURDIR:M/usr/src*) || !empty(.CURDIR:M/usr/obj*)) && !defined(NOCCACHE)
CC=/usr/local/libexec/ccache/world-cc
CXX=/usr/local/libexec/ccache/world-c++
.endif
Basicamente nós iniciamos a instalação do ccache no primeiro passo e procedemos editando /etc/make.conf para habilitar ccache nas compilações.
Agora nós precisamos atualizar o ambiente.
Se você está usando as shells csh/tcsh, adicione o seguinte para /root/.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
Se você está usando zsh, adicione o seguinte para seu arquivo /root/.zshrc:
export PATH=/usr/local/libexec/ccache:$PATH
export CCACHE_PATH=/usr/bin:/usr/local/bin
export CCACHE_DIR=/var/tmp/ccache
export CCACHE_LOGFILE=/var/log/ccache.log
Após atualizar os dotfiles, nós atualizamos o ambiente. Usuários de shells csh/tcsh podem atualizar assim:
# source /root/.cshrc
Qualquer um usando zsh pode atualizar o ambiente rodando o seguinte comando:
# source /root/.zshrc
E é isso: ccache está instalado e o ambiente está atualizado. Sua próxima compilação será realizada com ccache habilitado.
Para mostrar o sumário de estatísticas:
% ccache -s
Para zerar as estatísticas:
% ccache -z
Para ver o arquivo de ajuda para uma lista de opções do ccache:
% ccache -h
Se você notar que um port falhou na compilação, desative ccache e tente novamente:
# make NOCCACHE=yes install clean
Você pode encontrar mais informações acerca do ccache através de:
% man ccache
% ccache -h
% less /usr/local/share/doc/ccache/ccache-howto-freebsd.txt
% links /usr/local/share/doc/ccache/index.html
http://forums.freebsd.org/showthread.php?t=174
Fonte: http://linux-bsd-sharing.blogspot.com/2009/01/howto-using-ccache-on-freebsd.html
Ccache WebSite: http://ccache.samba.org/
Créditos: Felippe Meirelles