Un compilador traduce un programa escrito en un lenguaje de programación a otro lenguaje, generalmente código de máquina. El proceso de compilación incluye preprocesado, compilación propiamente dicha y enlazado. GCC (Colección de Compiladores GNU) es un compilador popular para C/C++ en Linux, el cual se instala usando el gestor de paquetes como aptitude install gcc g++.
Compilador: traduce código fuente a lenguaje máquina
1. COPILADOR
es un programa informático que traduce un
programa escrito en un lenguaje de
programación a otro lenguaje de
programación, generando un programa
equivalente que la máquina será capaz de
interpretar. Usualmente el segundo lenguaje
es lenguaje de máquina, pero también puede
ser un código intermedio (bytecode), o
simplemente texto. Este proceso de
traducción se conoce como
2. FASES DE COPILACION
El preprocesado
El compilador comienza por aplicar cada instrucción pasada al
preprocesador (todas las líneas que comienzan con #, entre
estas las #define). Estas instrucciones son en realidad muy
simples ya que únicamente copian o eliminan secciones de
código sin compilarlas
La compilación
Luego, el compilador compila cada archivo fuente (.c y .cpp), es
decir crea un archivo binario (.o) para cada archivo fuente,
excepto para el archivo conteniendo la función main. Esta fase
constituye la compilación propiamente dicha. .
El enlazado
Finalmente, el compilador une cada archivo .o con los archivos
binarios de las librerías que son utilizadas (archivos .a y .so bajo
Linux, archivos .dll bajo Windows).
3. COPILADOR PARA LINUX G++ ,
GCC
G++=es el alias tradicional de GNU C++, un conjunto gratuito de
compiladores de C++. Forma parte del GCC, GNU Compiler Collection
(del inglés, colección de compiladores GNU).
En sistemas operativos GNU, gcc es el comando usado para ejecutar el
compilador de C, mientras que g++ ejecuta el compilador de C++.
GCC= es un compilador integrado del proyecto GNU para C, C++,
Objective C y Fortran; es capaz de recibir un programa fuente en
cualquiera de estos lenguajes y generar un programa ejecutable binario
en el lenguaje de la máquina donde ha de correr.
La sigla GCC significa "GNU Compiler Collection". Originalmente
significaba "GNU C Compiler"; todavía se usa GCC para designar una
compilación en C. G++ refiere a una compilación en C++.
Sintaxis.
gcc [ opción | archivo ] ...
g++ [ opción | archivo ] ...
4. Grandes etapas para escribir un
programa en c
Escribir el código fuente
Un simple bloc de notas puede ser suficiente, por ejemplo podemos escribir en el fichero
plop.c:
#include <stdio.h>
int main(){
printf("plop !n");
return 0;
}
Compilar
Bajo Linux llamamos directamente a gcc (-W y –Wall permiten
mostrar más mensajes para verificar si el código es “limpio”, -o
plop.exe indica que el ejecutable que será creado debe llamarse
plop.exe):
gcc -W -Wall -o plop.exe plop.c
Ejecución
Tan solo queda ejecutarlo:
./plop.exe
5. INSTALACION DEL COPILADOR
Bajo LinuxBajo Linux
En general se utiliza gcc y g++. Para instalarlo se utiliza suEn general se utiliza gcc y g++. Para instalarlo se utiliza su
gestor de paquetes habitual. Por ejemplo bajo Debian (ogestor de paquetes habitual. Por ejemplo bajo Debian (o
cualquier distribución basada en debian) basta con escribircualquier distribución basada en debian) basta con escribir
como root o con un sudo:como root o con un sudo:
aptitude updateaptitude update
aptitude safe-upgradeaptitude safe-upgrade
aptitude install gcc g++aptitude install gcc g++
Del mismo modo podemos instalar un entrono deDel mismo modo podemos instalar un entrono de
desarrollo como por ejemplo kdevelop (bajo KDE) o anjutadesarrollo como por ejemplo kdevelop (bajo KDE) o anjuta
(bajo gnome).(bajo gnome).
6. INSTALACION DEL COPILADOR
Bajo LinuxBajo Linux
En general se utiliza gcc y g++. Para instalarlo se utiliza suEn general se utiliza gcc y g++. Para instalarlo se utiliza su
gestor de paquetes habitual. Por ejemplo bajo Debian (ogestor de paquetes habitual. Por ejemplo bajo Debian (o
cualquier distribución basada en debian) basta con escribircualquier distribución basada en debian) basta con escribir
como root o con un sudo:como root o con un sudo:
aptitude updateaptitude update
aptitude safe-upgradeaptitude safe-upgrade
aptitude install gcc g++aptitude install gcc g++
Del mismo modo podemos instalar un entrono deDel mismo modo podemos instalar un entrono de
desarrollo como por ejemplo kdevelop (bajo KDE) o anjutadesarrollo como por ejemplo kdevelop (bajo KDE) o anjuta
(bajo gnome).(bajo gnome).