• No results found

5 CASE STUDIES AND ANALYSIS Introduction

5.1.1 Method and focus

Aparte de todos esos paquetes, también necesitarás varios parches. Estos corrigen pequeños errores en los paquetes que debería solucionar su desarrollador, o simplemente hacen pequeñas modificaciones para adaptarlos a nuestras necesidades. Necesitarás los siguientes:

Parche para Bash − 7 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/bash−2.05b−2.patch

Parche Attribute para Bison − 2 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/bison−1.875−attribute.patch

Parche Hostname para Coreutils − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/coreutils−5.0−hostname−2.patch

Parche Uname para Coreutils − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/coreutils−5.0−uname.patch

Parche Mkstemp para Ed − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/ed−0.2−mkstemp.patch

Parche Spawn para Expect − 6 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/expect−5.39.0−spawn.patch

Parche Libexecdir para Gawk − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/gawk−3.1.3−libexecdir.patch

Parche No−Fixincludes para GCC − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/gcc−3.3.1−no_fixincludes−2.patch

Parche Specs para GCC − 10 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/gcc−3.3.1−specs−2.patch

Parche que suprime Libiberty para GCC − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/gcc−3.3.1−suppress−libiberty.patch

Parche para GCC−2 − 16 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/gcc−2.95.3−2.patch

Parche No−Fixincludes para GCC−2 − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/gcc−2.95.3−no−fixinc.patch

Parche Return−Type para GCC−2 − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/gcc−2.95.3−returntype−fix.patch

Parche Sscanf para Glibc − 2 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/glibc−2.3.2−sscanf−1.patch

Parche Gcc33 para Grub − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/grub−0.93−gcc33−1.patch

Parche More−Programs para Kbd − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/kbd−1.08−more−programs.patch

Parche 80−Columns para Man − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/man−1.5m2−80cols.patch

Parche Manpath para Man − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/man−1.5m2−manpath.patch

Parche Pager para Man − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/man−1.5m2−pager.patch

Parche Etip para Ncurses − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/ncurses−5.3−etip−2.patch

Parche Vsscanf para Ncurses − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/ncurses−5.3−vsscanf.patch

Parche Mii−Tool−Gcc33 para Net−tools − 2 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/net−tools−1.60−miitool−gcc33−1.patch

Parche Libc para Perl − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/perl−5.8.0−libc−3.patch

Parche Locale para Procps − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/procps−3.1.11−locale−fix.patch

Parche Newgrp para Shadow − 1 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/shadow−4.0.3−newgrp−fix.patch

Parche Vsnprintf para Zlib − 10 KB:

http://www.linuxfromscratch.org/patches/lfs/5.0/zlib−1.1.4−vsnprintf.patch

Aparte de los anteriores parches necesarios, hay una serie de parches opcionales creados por la comunidad LFS. Muchos de ellos solucionan pequeños problemas, o activan alguna funcionalidad que no lo está por defecto. Eres libre de examinar la base de datos de los parches, que se encuentra en

http://www.linuxfromscratch.org/patches, y elegir cualquier parche adicional que desees utilizar.

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.

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 y librerías), 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. Puesto que los paquetes compilados aquí son puramente temporales, no queremos que estos ficheros contaminen el futuro sistema LFS.

La clave para aprender qué es lo que hace funcionar un sistema Linux es saber para qué se usa cada paquete y por qué el usuario o el sistema lo necesita. Por esta razón se facilita un breve resumen del contenido de cada paquete antes de las propias instrucciones de instalación. Para ver una descripción corta de cada programa de un paquete, consulta la sección correspondiente en el Apéndice A.

Las instrucciones de construcción asumen que estás usando el intérprete de comandos bash. También se asume que ya has desempaquetado el código fuente del paquete y has ejecutado un cd para cambiarte al directorio de los fuentes desempaquetadas antes de empezar con los comandos de instalación.

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 este como en el siguiente capítulo, pero a veces sólo es necesario en uno de ellos. Por tanto, no te preocupes cuando parezca que hemos olvidado las instrucciones para uno de los parches descargados.

Durante la instalación de muchos paquetes verás aparecer en pantalla todo tipo de 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.

Excepto si se indica lo contrario, normalmente debes borrar las fuentes y directorios de construcción despues

de instalar cada paquete, por motivos de limpieza y para liberar espacio.

Antes de continuar, asegúrate de que la variable de entorno LFS tiene el valor correcto ejecutando lo siguiente:

echo $LFS

Asegúrate de que muestra la ruta al punto de montaje de tu partición LFS, que es /mnt/lfs si has seguido nuestro ejemplo.