Construcción del sistema temporal

Introducción

En este capítulo compilaremos e instalaremos un sistema Linux mínimo. Este sistema contendrá sólo las herramientas necesarias para poder iniciar la construcción del sistema LFS definitivo en el siguiente capítulo, permitiendo un entorno de trabajo algo más amigable para el usuario que un entorno mínimo.

La construcción de este sistema minimalista se hará en dos etapas: primero construiremos un conjunto de herramientas independiente del sistema anfitrión (compilador, ensamblador, enlazador, librerías y unas pocas herramientas útiles), y después las usaremos para construir el resto de herramientas esenciales.

Los ficheros compilados en este capítulo se instalarán bajo el directorio $LFS/tools para mantenerlos separados de los ficheros que se instalen en el siguiente capítulo y de los directorios de producción de tu anfitrión. Puesto que los paquetes compilados aquí son puramente temporales, no queremos que estos ficheros contaminen el futuro sistema LFS.

Antes de ejecutar las instrucciones de construcción para un paquete, se espera que ya lo hayas desempaquetado (lo que se explicará pronto) como usuario lfs y hayas hecho un cd para entrar al directorio creado. Las instrucciones de construcción asumen que estás usando el intérprete de comandos bash.

Varios de los paquetes deben parchearse antes de compilarlos, pero sólo cuando el parche es necesario para solucionar un problema. Con frecuencia el parche es necesario tanto en éste como en el siguiente capítulo, pero a veces sólo es necesario en uno de ellos. Por lo tanto, no te preocupes cuando parezca que hemos olvidado las instrucciones para uno de los parches descargados. Igualmente, cuando se aplique un parche ocasionalmente verás un mensaje de aviso sobre offset o fuzz. No debes preocuparte por estos avisos, pues el parche se aplicará correctamente.

Durante la compilación de muchos paquetes verás aparecer en pantalla muchos avisos (warnings). Esto es normal y puedes ignorarlos con tranquilidad. No son más que eso, avisos; la mayoría debidos a un uso inapropiado, pero no inválido, de la sintaxis de C o C++. Se debe a que los estándares de C cambian con frecuencia y algunos paquetes todavía usan un estándar antiguo, lo que no es realmente un problema.

Tras instalar cada paquete debes borrar sus directorios de fuentes y de construcción, excepto si se indica lo contrario. Borrar las fuentes ahorra espacio, pero también previene de fallos de configuración cuando el mismo paquete se reinstale más adelante. Sólo necesitarás guardar los directorios de fuentes y construcción de tres paquetes durante un tiempo, para que su contenido pueda ser usado por posteriores comandos. No te pierdas los recordatorios.