Pesquisa de site

Como instalar GNU GCC (compilador C e C++) e ferramentas de desenvolvimento no RHEL/CentOS e Fedora


Hoje em dia, como administrador de sistema ou engenheiro, você não pode se sentir satisfeito em saber como usar a CLI e solucionar problemas de servidores GNU/Linux, mas também precisará dar um passo adiante na área de desenvolvimento para permanecer no topo do seu jogo. . Se você está considerando uma carreira em desenvolvimento de kernel ou aplicativos para Linux, então C ou C++ é o melhor lugar para começar.

Leia também: Instale C, C++ e crie ferramentas essenciais no Debian/Ubuntu/Mint

Neste artigo iremos explicar como instalar compiladores Gnu C e C++ e suas ferramentas de desenvolvimento relacionadas, como automake, autoconf, flex, bison, etc. em sistemas Fedora e CentOS/RHEL.

O que é compilador?

Em palavras simples, um compilador é um programa de software que transforma instruções escritas em uma linguagem de origem em uma linguagem de destino que a CPU da máquina pode compreender e executar.

No Fedora e em seus derivados (na verdade, isso também vale para todo o ecossistema de distribuição Linux), os compiladores C e C++ mais conhecidos são o gcc e g++, respectivamente, ambos desenvolvidos e apoiados ativamente pela Free Software Foundation como parte do projeto GNU.

Instalando GCC (compilador C++ e ferramentas de desenvolvimento

Se gcc e/ou g++ e suas ferramentas de desenvolvimento relacionadas não estiverem instaladas em seu sistema por padrão, você poderá instalar a versão mais recente disponível nos repositórios do seguinte modo:

yum groupinstall 'Development Tools'		[on CentOS/RHEL 7/6]
dnf groupinstall 'Development Tools'		[on Fedora 22+ Versions]

Antes de começarmos a escrever código C ou C++, há outra ferramenta para impulsionar seu conjunto de ferramentas de desenvolvimento que queremos mostrar a você.

Acelerando compilações C e C++ no Linux

Quando você, como parte do processo de desenvolvimento, precisa recompilar várias vezes após fazer alterações no código-fonte, é ótimo ter um cache do compilador para acelerar recompilações futuras.

No Linux, existe um utilitário chamado ccache, que 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++.

Ccache tem apenas algumas limitações: só é útil durante a recompilação de um único arquivo. Para outros tipos de compilações, o processo acabará executando o compilador real. A mesma coisa acontece se um sinalizador do compilador não for suportado. O lado positivo é que, em qualquer caso, isso não interferirá na compilação real e não gerará um erro – apenas retornará ao compilador real.

Vamos instalar esta ferramenta:

yum install ccache 

e veja como funciona com um exemplo.

Testando o compilador GNU C com um programa C++ simples

Como exemplo, vamos usar um programa C++ simples que calcula a área de um retângulo após seu comprimento e largura terem sido fornecidos como entradas.

Abra seu editor de texto favorito e digite o seguinte código e salve como area.cpp:

#include <iostream> 
using namespace std;  

int main() 
{ 
float length, width, area; 

cout << "Enter the length of the rectangle: "; 
cin >> length; 
cout << "Now enter the width: "; 
cin >> width; 
area = length*width; 

cout <<"The area of the rectangle is: "<< area << endl;

return 0; 
} 

Para compilar o código acima em uma área nomeada executável no diretório de trabalho atual, use a opção -o com g++:

g++ area.cpp -o area

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

ccache g++ area.cpp -o area 

Em seguida, execute o binário:

./area
Saída de amostra
Enter the length of the rectangle: 2.5
Now enter the width: 3.7
The area of the rectangle is: 9.25

Não deixe que este exemplo simples faça você pensar que ccache não é útil. Você saberá que o ccache é uma ótima ferramenta ao recompilar um grande arquivo de código-fonte. O mesmo princípio se aplica também aos programas C.

Resumo

Neste artigo explicamos como instalar e usar os compiladores GNU para C e C++ em distribuições baseadas no Fedora.

Além disso, mostramos 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 do g++ para obter mais opções e exemplos, aguardamos seu contato caso tenha alguma dúvida ou comentário.