Pesquisa de site

Instale ferramentas de desenvolvimento e compilador C, C++ (essenciais para compilação) no Debian/Ubuntu


A maioria dos administradores e engenheiros de sistema Linux são obrigados a conhecer alguma programação básica para ajudá-los em suas tarefas diárias. Se eles também quiserem dar um passo adiante na área de desenvolvimento (seja como programadores de kernel ou de aplicativos), então C ou C++ é o melhor lugar para começar.

Leia também: Instale C, C++ e ferramentas de desenvolvimento no RHEL/CentOS/Fedora

Neste artigo, explicaremos como instalar os compiladores C e C++ e suas ferramentas de desenvolvimento (build-essential ) pacotes relacionados como make, libc-dev, dpkg-dev, etc. no Debian e derivados como Ubuntu e Linux Mint.

O software build-essential contém uma lista informativa de softwares que são tratados como importantes para a construção de pacotes Debian, incluindo o compilador gcc, make e outras ferramentas necessárias.

O que é um compilador?

Simplificando, um compilador é um programa de software que processa instruções escritas em uma linguagem de programação e cria um arquivo binário que a CPU da máquina pode compreender e executar.

Nas distribuições baseadas em Debian, os compiladores C e C++ mais conhecidos são gcc e g++, respectivamente. Ambos os programas foram desenvolvidos e ainda são mantidos pela Free Software Foundation através do projeto GNU.

Instalando o compilador C, C++ e ferramentas de desenvolvimento (essencial para compilação)

Se o seu sistema não tiver o pacote build-essential instalado por padrão, você poderá instalar a versão mais recente disponível nos repositórios de distribuição padrão da seguinte maneira:

apt-get update && apt-get install build-essential     
OR
sudo apt-get update && sudo apt-get install build-essential

Agora estamos prontos para começar a digitar código C ou C++… ou quase. Estamos prestes a mostrar mais uma ferramenta para impulsionar seu conjunto de ferramentas de desenvolvimento.

Acelerando compilações C e C++

Quando você sabe que precisará compilar um programa, fazer alterações e depois recompilar novamente, é ótimo ter uma ferramenta como ccache, que como você provavelmente adivinhará com base em seu nome, é um cache do compilador.

Ele acelera a recompilação armazenando em cache compilações anteriores e detectando quando a mesma compilação está sendo feita novamente. Além de C e C++, ele também suporta Objective-C e Objective-C++. As únicas limitações são:

  1. Suporta apenas o armazenamento em cache da compilação de um único arquivo C/C++/Objective-C/Objective-C++. Para outros tipos de compilações (compilação de vários arquivos, vinculação, para citar alguns exemplos), o processo acabará executando o compilador real.
  2. Alguns sinalizadores do compilador podem não ser suportados. Se tal sinalizador for detectado, o ccache voltará silenciosamente para a execução do compilador real.

Vamos instalar esta ferramenta:

aptitude install ccache

Na próxima seção, veremos alguns exemplos de compilação de código C e C++ com e sem ccache.

Testando C e C++ com um programa de exemplo

Vamos usar o exemplo clássico de um programa C muito básico que soma dois números. Abra seu editor de texto favorito e digite o seguinte código e salve-o como sum.c:

#include<stdio.h>
int main()
{
   int a, b, c;
   printf("Enter two numbers to add, separated by a space: ");
   scanf("%d%d",&a,&b);
   c = a + b;
   printf("The sum of equals %d\n",c);
   return 0;
}

Para compilar o código acima em um executável chamado sum no diretório de trabalho atual, use a opção -o com gcc:

gcc sum.c -o sum

Se você quiser aproveitar as vantagens do ccache, basta acrescentar o comando acima com ccache, como segue:

ccache gcc sum.c -o sum

Em seguida, execute o binário:

./sum

Embora este exemplo básico não nos permita ver todo o poder do ccache, para programas maiores você perceberá rapidamente que ele é uma ótima ferramenta. O mesmo se aplica aos programas C++.

Resumo

Neste guia, mostramos como instalar e usar os compiladores GNU para C e C++ no Debian e derivados. Além disso, explicamos como usar o cache do compilador para acelerar recompilações do mesmo código. Embora você possa consultar as páginas de manual on-line do gcc e g++ para obter mais opções e exemplos, não hesite em nos enviar uma mensagem usando o formulário abaixo se tiver alguma dúvida ou comentário.