Utilize o Ccache e compile muito mais rápido

Uma ferramenta para seu compilador voar!


Utilize o Ccache e compile muito mais rápido


Ccache é uma ferramenta de desenvolvimento de software que armazena em cache compilações para que na próxima vez a mesma compilação possa ser evitada e os resultados possam ser retirados do cache.

Isso pode acelerar bastante o tempo de recompilação. A detecção é feita por hash de diferentes tipos de informações que devem ser exclusivas para a compilação e, em seguida, usando a soma de hash para identificar a saída em cache.

Ccache é licenciado sob a Licença Pública Geral GNU.


Instalação

Para instalar o Ccache você pode construir do zero e instalar com as ferramentas CMake e GNU Make clonando o código fonte do repositório no GitHub:

git clone https://github.com/ccache/ccache
cd ccache
cmake -B build -D CMAKE_BUILD_TYPE=Release .
cd build && make
sudo make install

Mas, o Cache está disponível na maioria dos repositórios dos gerenciadores de pacotes. Por exemplo, para instalar no Ubuntu:

sudo apt install ccache


Exemplo de uso

Sabemos que as compilações que usam RegEx tendem a demorar um pouco mais que o normal. Suponhamos que você possua esse código em C++:

#include <iostream>
#include <regex>

int main(){
  std::string html = "<a href=\"https://terminalroot.com.br/\">Esse é um link</a>";
  std::regex tags("<[^>]*>");
  std::string remove{};
  std::cout << std::regex_replace(html, tags, remove) << '\n';
  return 0;
}

Para acelerar a compilação, você deve passar para o ccache o comando de compilação:

ccache g++ regex.cpp

Para compilar com GCC

Ou, se for com Clang:

ccache clang++ regex.cpp

Você pode linkar o ccache para ser usado como padrão, ex.: ln -s ccache /usr/local/bin/g++.

Para dicas de parâmetros e optimizações, consulte a ajuda ou o manual:

man ccache
ccache --help

Visite também o repositório e o site oficial: https://ccache.dev/.

Alternativas ao Ccache seria os softwares: distcc, Icecream(SUSE) e Goma(Google).


cpp linguagemc gcc clang


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo


Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!