Cómo instalar GNU GCC (compilador C y C ++) y herramientas de desarrollo en RHEL/CentOS y Fedora


Hoy en día, como administrador o ingeniero de sistemas, no puede sentirse satisfecho al saber cómo usar la CLI y solucionar problemas de servidores GNU/Linux, pero también deberá ir un paso más allá en el área de desarrollo para mantenerse en la cima de su juego. . Si está considerando una carrera en el desarrollo de kernel o aplicaciones para Linux, entonces C o C ++ es el mejor lugar para comenzar.

Lea también: Instale C, C ++ y cree herramientas esenciales en Debian/Ubuntu/Mint

En este artículo explicaremos cómo instalar compiladores Gnu C y C ++ y sus herramientas de desarrollo relacionadas como automake, autoconf, flex, bison, etc. en sistemas Fedora y CentOS/RHEL.

¿Qué es el compilador?

En palabras simples, un compilador es un programa de software que transforma declaraciones escritas en un idioma de origen en un idioma de destino que la CPU de la máquina puede comprender y ejecutar.

En Fedora y derivados (en realidad, eso también es cierto para todo el ecosistema de distribución de Linux), los compiladores de C y C ++ más conocidos son gcc y g ++, respectivamente, ambos desarrollados y respaldados activamente por la Free Software Foundation como parte de la Proyecto GNU.

Instalación de GCC (compilador de C ++ y herramientas de desarrollo

Si gcc y/o g ++ y las herramientas de desarrollo relacionadas no están instaladas en su sistema de forma predeterminada, puede instalar la última versión disponible de los repositorios de la siguiente manera:

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

Antes de sumergirnos en la escritura de código C o C ++, hay otra herramienta para mejorar su conjunto de herramientas de desarrollo que queremos mostrarle.

Acelerando las compilaciones de C y C ++ en Linux

Cuando, como parte del proceso de desarrollo, tiene que volver a compilar varias veces después de realizar cambios en el código fuente, es genial tener un caché del compilador para acelerar futuras recompilaciones.

En Linux, existe una utilidad llamada ccache, que acelera la recompilación almacenando en caché las compilaciones anteriores y detectando cuándo se vuelve a realizar la misma compilación. Además de C y C ++, también es compatible con Objective-C y Objective-C ++.

Ccache tiene solo algunas limitaciones: solo es útil al recompilar un solo archivo. Para otros tipos de compilaciones, el proceso terminará ejecutando el compilador real. Lo mismo sucede si no se admite un indicador de compilador. El lado positivo es que, en cualquier caso, no interferirá con la compilación real y no arrojará un error, simplemente recurra al compilador real.

Instalemos esta herramienta:

# yum install ccache 

y vea cómo funciona con un ejemplo.

Prueba del compilador GNU C con un programa C ++ simple

Como ejemplo, usemos un programa C ++ simple que calcula el área de un rectángulo después de que se hayan proporcionado su longitud y ancho como entradas.

Abra su editor de texto favorito e ingrese el siguiente código, luego guárdelo 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 el código anterior en un área ejecutable con nombre en el directorio de trabajo actual, use el modificador -o con g ++:

# g++ area.cpp -o area

Si desea aprovechar ccache, simplemente anteponga ccache al comando anterior, de la siguiente manera:

# ccache g++ area.cpp -o area 

Luego ejecuta el binario:

./area
Enter the length of the rectangle: 2.5
Now enter the width: 3.7
The area of the rectangle is: 9.25

No permita que este simple ejemplo le haga pensar que ccache no es útil. Llegará a saber qué gran herramienta es ccache al recompilar un archivo de código fuente grande. El mismo principio se aplica también a los programas C.

Resumen

En este artículo hemos explicado cómo instalar y usar los compiladores GNU para C y C ++ en distribuciones basadas en Fedora.

Además, mostramos cómo usar una caché de compilador para acelerar las recompilaciones del mismo código. Si bien puede consultar las páginas de manual en línea de gcc y g ++ para obtener más opciones y ejemplos, esperamos tener noticias suyas si tiene alguna pregunta o comentario.