¿Qué es la GCC (Colección de Compiladores GNU)?

La colección de compiladores GNU o GCC es un compilador y herramientas auxiliares relacionadas que se utilizan para compilar diferentes lenguajes de programación en formatos binarios y relacionados. GCC ha sido creado y actualmente desarrollado por el Proyecto GNU. Además, el nombre GCC viene de GNU, como ya habrán notado. GCC es muy popular en la comunidad de código abierto y es usado por diferentes proyectos como el Kernel de Linux. GCC ha jugado un papel muy importante en las dos primeras décadas del movimiento opensource al proporcionar una colección de compiladores libres, de código abierto y dinámicos. GCC está provisto de la GPL o Licencia Pública General donde permite que el GCC sea distribuido de manera libre y de código abierto.

Historia del CCG

GCC ha sido iniciado por el Proyecto GNU donde Richard Stallman es su pionero. El GCC fue lanzado por primera vez en marzo de 1987 desde los servidores FTP del MIT. Es nombrado como el primer software libre y de código abierto que se utiliza popularmente. En un año se añade el primer lenguaje de programación C++ soportado. También más tarde se añadió soporte para Objective-C, Objective-C++, Fortran, Java, Ada y Go. Al escribir este post la última versión de GCC es la 10.2 que ha salido en julio de 2020.

Lenguajes de programación apoyados por el GCC

GCC es una colección de compiladores de código abierto y flexible, que soporta una amplia gama de lenguajes de programación como el que se muestra a continuación.

  • Lenguaje de programación C
  • Lenguaje de programación C++
  • Lenguaje de programación del Objetivo-C
  • Lenguaje de programación Objective-C++
  • Lenguaje de programación Fortran
  • Lenguaje de programación Ada
  • Lenguaje de programación Go
  • Lenguaje de programación Java

Plataformas y arquitecturas de hardware soportadas por GCC

Al igual que los lenguajes de programación, GCC soportaba diferentes plataformas de hardware y arquitecturas como las siguientes.

  • Alfa
  • ARM
  • IA-32
  • IA-64
  • MIPS
  • PowerPC
  • SPARC
  • x86-64

Uso del GCC

GCC puede ser instalado en diferentes sistemas operativos como Linux, Ubuntu, Fedora, CentOS, Debian, Mint, Kali, Windows, MacOS, etc. Pero las plataformas Linux son las más cómodas donde el GCC se desarrolla principalmente en Linux. GCC puede ser instalado usando instaladores o administradores de paquetes para los sistemas operativos soportados. GCC proporciona un uso de línea de comandos donde se proporcionan diferentes opciones para especificar los detalles del proceso de compilación. A continuación, puede encontrar algunos ejemplos de uso básico sobre GCC.

# Simplemente compilar con GCCgcc helloworld.c# Compilar en un archivo ejecutable llamado hwgcc helloworld.c -o hw# Compilar múltiples archivos$ gcc helloworld1.c myfile.c# Mostrar mensajes de advertencia$ gcc -Wall helloworld.c -o hw

Opciones populares del compilador GCC

El GCC es un conjunto de herramientas de compilación rico en características, donde se proporcionan diferentes opciones para diferentes casos. Las opciones de GCC se utilizan para cambiar los atributos de compilación predeterminados. Por ejemplo, se puede proporcionar una entrada extra al código fuente antes de la compilación con las macros, etc. A continuación enumeramos algunas de las opciones populares del compilador GCC.

-La opción «c» compila los archivos de origen en archivos de objeto sin enlazar.

-Nombre=valor define y proporciona un macro preprocesador al proceso de compilación.

-fPIC genera un código independiente de la posición para las bibliotecas compartidas para ser usado por otros binarios.

-glevel genera información de depuración en binario que puede ser depurada por errores con la herramienta gdb.

-enlaces de libración o de biblioteca en los binarios creados.

Ldir busca en determinados directorios los archivos de la biblioteca para ser usados en el proceso de compilación.

-o myexes establece el archivo ejecutable creado como myexe.

-Niveles optimizan el código y crean ejecutables y binarios optimizados.

-compartido genera un archivo de objeto compartido para la biblioteca compartida.

-w desactiva todos los mensajes de advertencia.

-El muro habilita todos los mensajes de advertencia.

-Wextra permite mensajes de advertencia adicionales de una manera más verbosa.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.