La colección de compiladores GNU (GCC) es una colección de compiladores y bibliotecas para los lenguajes de programación C, C++, Objective-C, Fortran, Ada, Go y D. Muchos proyectos de código abierto, incluidas las herramientas GNU y el kernel de Linux, se compilan con GCC.
Este tutorial explica cómo instalar el compilador GCC en CentOS 7. Explicaremos cómo instalar la versión estable de distribución y la versión más reciente de GCC disponible en el repositorio de SCL.
Requisitos previos #
Para agregar nuevos repositorios e instalar paquetes en su sistema CentOS, debe iniciar sesión como root o usuario con privilegios sudo.
Instalando GCC en CentOS #
Los repositorios predeterminados de CentOS contienen un grupo de paquetes llamado Development Tools
que contiene el compilador GCC y muchas bibliotecas y otras utilidades necesarias para compilar software.
Para instalar las herramientas de desarrollo, incluido el compilador GCC, ejecute:
sudo yum group install "Development Tools"
El comando instala un montón de paquetes nuevos, incluido gcc
, g++
y make
.
También puede instalar las páginas del manual sobre el uso de GNU/Linux para el desarrollo:
sudo yum install man-pages
Valide que el compilador GCC se haya instalado correctamente utilizando gcc --version
comando que imprime la versión GCC:
gcc --version
La versión predeterminada de GCC disponible en los repositorios de CentOS 7 es 4.8.5
:
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Eso es todo. GCC ahora está instalado en su sistema y puede comenzar a usarlo.
Ejemplo de compilación de Hello World #
Compilar un programa básico en C o C++ usando GCC es una tarea fácil. Abre tu editor de texto y crea el siguiente archivo:
nano hello.c
hola.c#include <stdio.h>
int main()
{
printf ("Hello World!\n");
return 0;
}
Guarde el archivo y compílelo en un ejecutable ejecutando el siguiente comando:
gcc hello.c -o hello
Esto creará un archivo binario llamado hello
en el mismo directorio donde ejecuta el comando.
Ejecuta el hello
programa con:
./hello
El programa debería mostrar:
Hello World!
Instalación de múltiples versiones de GCC #
En esta sección, proporcionaremos instrucciones sobre cómo instalar y usar varias versiones de GCC en CentOS 7. Las versiones más nuevas del compilador GCC incluyen compatibilidad con nuevos idiomas, mejor rendimiento y funciones ampliadas.
Las colecciones de software, también conocidas como SCL, son un proyecto comunitario que le permite crear, instalar y usar varias versiones de software en el mismo sistema, sin afectar los paquetes predeterminados del sistema. Al habilitar las Colecciones de software, obtiene acceso a las versiones más recientes de lenguajes de programación y servicios que no están disponibles en los repositorios principales.
Los repositorios de SCL proporcionan un paquete llamado Developer Toolset, que incluye versiones más recientes de GNU Compiler Collection y otras herramientas de desarrollo y depuración.
Primero, instale el archivo de lanzamiento de CentOS SCL. Es parte del repositorio de extras de CentOS y se puede instalar ejecutando el siguiente comando:
sudo yum install centos-release-scl
Actualmente, están disponibles las siguientes colecciones de Developer Toolset:
- Conjunto de herramientas para desarrolladores 7
- Conjunto de herramientas para desarrolladores 6
En este ejemplo, instalaremos Developer Toolset versión 7. Para hacerlo, escriba el siguiente comando en su terminal CentOS 7:
sudo yum install devtoolset-7
Para acceder a la versión 7 de GCC, debe iniciar una nueva instancia de shell utilizando la Colección de software scl
herramienta:
scl enable devtoolset-7 bash
Ahora, si revisa la versión de GCC, notará que GCC 7 es la versión predeterminada en su shell actual:
gcc --version
gcc (GCC) 7.3.1 20180303 (Red Hat 7.3.1-5)
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
En este punto, puede usar la versión más nueva de GCC como cualquier otra herramienta normal.