La compilación es un proceso por el cual transformamos un archivo que está en código fuente en un archivo binario ejecutable. Para hacer este trabajo llamamos al compilador del sistema operativo, tal como lo mostramos en una ocasión anterior. En este post explicaremos en más detalle en qué consiste la compilación de programas en Linux.
Compilación de programas
Para empezar, abramos nuestro editor de texto preferido y escribamos el siguiente código C. Llamaremos al archivo uno.c, y luego lo transformaremos en binario ejecutable.
main() { #include <stdio.h> printf ("Hola a todos desde Argentina\n"); }
A continuación, ejecutamos el siguiente comando:
gcc uno.c -o uno
Lo que hacemos al ejecutar el comando anterior es transformar al archivo uno.c en otro llamado simplemente uno. Este archivo es binario y también ejecutable. Por eso, si lo queremos ejecutar deberemos escribir en la línea de comandos:
./uno
tras lo cual se mostrará el siguiente mensaje por pantalla:
Hola a todos desde Argentina
Es importante aclarar que cuando los programadores desarrollan aplicaciones no tienen un solo archivo sino muchos, ellos utilizan el comando llamado configure. Esta orden chequea que todas las bibliotecas que los programadores usaron para generar el binario estén instaladas previamente en el sistema. De ser así, entonces
se genera un archivo llamado Makefile, el cual indicará al compilador qué es lo que tiene que compilar primero. Si las bibliotecas no están presentes en el sistema, configure nos informará cuál(es) para que las instalemos antes de continuar. Al finalizar, lo único que nos queda es copiar los ejecutables al sistema operativo para que los podamos llamar con simples comandos.
Los programadores dejan dentro del paquete un archivo llamado “README” o “INSTALL” donde nos brindan todos los detalles acerca de los pasos a seguir para compilar los programas.
Paso a paso
En resumen, estos son los pasos a seguir para compilar un programa e instalarlo en nuestro sistema:
Paso 1 – Compilar el programa y generar el archio Makefile:
./configure
Paso 2 – Leer el archivo Makefile y generar los binarios:
make
Paso 3 – Copiar los binarios recién generados al sistema:
make install
Para más detalles, podemos consultar este excelente post (en inglés). ¡Nos leemos en breve!