Cómo van a hacerse las cosas

Vas a construir el sistema LFS utilizando una distribución ya instalada (como Debian, SuSE, Slackware, Mandrake o RedHat). El sistema Linux existente (el anfitrión) se utilizará como punto de inicio, pues necesitas herramientas tales como un compilador, un enlazador y un intérprete de comandos para construir el nuevo sistema. Normalmente, las herramientas necesarias están disponibles por defecto si seleccionas "desarrollo" como una de las opciones cuando instalas tu distribución.

En el Capítulo 3 crearás primero una nueva partición nativa de Linux y un sistema de ficheros, el sitio donde se compilará e instalará tu nuevo sistema LFS. Después, en el Capítulo 4, descargarás todos los paquetes y parches necesarios para construir un sistema LFS y los guardarás en el nuevo sistema de ficheros.

En el Capítulo 5 se describe la instalación de una serie de paquetes que formarán el equipo básico de desarrollo (o toolchain, conjunto de herramientas) utilizado para construir, en el Capítulo 6, el sistema real. Algunos de estos paquetes son necesarios para resolver dependencias circulares. Por ejemplo, para compilar un compilador necesitas un compilador.

Lo primero que se hará en el Capítulo 5 es construir un primer paso de las herramientas principales, compuestas por Binutils y GCC. Los programas de estos paquetes se enlazarán estáticamente para poder utilizarlos independientemente del sistema anfitrión. Lo segundo será construir Glibc, la librería C. Esta se construirá con los programas de las herramientas principales que acabamos de construir en el primer paso. Lo tercero es construir un segundo paso de las herramientas principales. Esta vez las herramientas serán enlazadas dinámicamente contra la recién construida Glibc. Todos los restantes paquetes del Capítulo 5 se construirán usando este segundo paso de las herramientas principales y enlazados dinámicamente contra la nueva Glibc independiente del anfitrión. Cuando esto esté hecho, el proceso de instalación de LFS ya no dependerá de la distribución anfitriona, con la excepción del núcleo en ejecución.

Puede que pienses que "esto parece mucho trabajo para simplemente aislarme de mi distribución anfitriona". Al principio del Capítulo 5 se da una explicación técnica completa, incluyendo algunas notas sobre las diferencias entre programas enlazados estática y dinámicamente.

En el Capítulo 6 construirás tu auténtico sistema LFS. Se utiliza el programa chroot (change root, cambio de raíz) para entrar en un entorno virtual y ejecutar un nuevo intérprete de comandos cuyo directorio raíz será la partición LFS. Esto es muy similar a reiniciar e indicarle al núcleo que monte la partición LFS como partición raíz. La razón de que en realidad no reinicies sino que uses chroot, es que crear un sistema arrancable requiere un trabajo adicional que no es necesario. Otra ventaja es que chroot te permite seguir usando el sistema anfitrión mientras se construye LFS. Mientras esperas que se complete la compilación de un paquete, puedes simplemente cambiar a otra consola virtual o escritorio X y continuar usando tu ordenador como lo harías normalmente.

Para terminar la instalación, en el Capítulo 7 se configuran los guiones de arranque. El núcleo y el gestor de arranque se configuran en el Capítulo 8 y el Capítulo 9 tiene algunas indicaciones para ayudarte una vez que finalices el libro. Entonces, por fin, estarás preparado para reiniciar tu ordenador y entrar a tu nuevo sistema LFS.

Este es un resumen corto del proceso. La información detallada sobre los pasos que seguirás se expone en los capítulos y en las descripciones de los paquetes a medida que avances en ellos. Si algo no está muy claro ahora, no te preocupes. Todo estará pronto en su sitio.

Por favor, lee con atención el Capítulo 2, ya que explica algunas cosas importantes que debes saber antes de comenzar a trabajar en el Capítulo 5 y posteriores.