>Cuando descargamos el código fuente de cualquier aplicación, observamos que las instrucciones de compilación e instalación suelen ser tan simples como llevar a cabo tres sencillos pasos, sea cual sea nuestro sistema operativo:
- ./configure
- make
- make install
Pero, ¿qué estamos realizando realmente? ¿Qué utilidad tienen estos archivos y comandos? Estos ficheros contienen tanto la información necesaria para instalar la aplicación correspondiente en nuestro sistema, como para conseguir que la instalación sea adecuada a nuestro sistema (versión de SO, de compilador, de librerías, etc.). Para entender cómo se crea cada uno de los ficheros principales y su utilidad, vamos a hablar de las AutoTools, así como de la herramienta make.
- Autoconf. Con esta herramienta conseguimos portabilidad en la instalación de aplicaciones. De esta forma, conseguiremos un fichero ejecutable llamado configure, capaz de detectar la configuración del sistema y crear un fichero Makefile (a partir de otro inicial y de un fichero de configuración generado con autoheader) de forma que sea correcto para nuestro ordenador.
- Automake. En el punto anterior hemos visto la necesidad de tener un Makefile previo para poder desarrollar el fichero de instalación final. Para la construcción de dicho fichero, utilizamos la herramienta Automake, que generará un fichero Makefile.in que servirá para conseguir nuestro Makefile final, tras la ejecución de configure.
- Libtool. Es una herramienta para crear, enlazar y cargar bibliotecas tanto estáticas como dinámicas.
Finalmente, y de forma simplificada, el proceso para alcanzar un Makefile ejecutable es el que podemos ver en el siguiente gráfico:
Para más información podemos consultar las guías de cada una de las aplicaciones en sus páginas: Make, Automake, Autoconf y Libtool.