Linux From Scratch: Versión 5.0 | ||
---|---|---|
Anterior | Capítulo 6. Instalación de los programas del sistema base | Siguiente |
Tiempo estimado de construcción: 0.1 SBU Estimación del espacio necesario en disco: 1.5 MB |
El paquete Zlib contiene la librería libz, utilizada por varios programas para realizar las funciones de compresión y descompresión..
Librería instalada: libz[a,so]
Zlib depende de: Binutils, Coreutils, GCC, Glibc, Make, Sed.
Zlib puede sufrir un desbordamiento de memoria en la función gzprintf(), que, aunque es difícil de explotar, debería ser corregido. Házlo aplicando este parche:
patch -Np1 -i ../zlib-1.1.4-vsnprintf.patch |
Prepara Zlib para su compilación:
./configure --prefix=/usr --shared |
Advertencia: se sabe que Zlib construye incorrectamente sus librerías si en el entorno se ha especificado un CFLAGS. Si estás usando tus propias variables CFLAGS, asegurate de añadir la directiva -fPIC durante esta fase, y eliminala posteriormente.
Compila el paquete:
make |
Instala las librerías compartidas:
make install |
Ahora, construye también las librerías no compartidas:
make clean ./configure --prefix=/usr make |
Este paquete contiene un banco de pruebas que puede realizar una serie de comprobaciones para asegurar que se ha construido correctamente. Si decides ejecutarlo, hazlo con el siguiente comando:
make test |
E instala el paquete:
make install |
La librería compartida de Zlib debe instalarse en el directorio /lib. De este modo, en el caso de que debas arrancar sin el directorio /usr, los programas vitales del sistema todavía tendrán acceso a la librería:
mv /usr/lib/libz.so.* /lib |
El enlace simbólico /usr/lib/libz.so apunta a un fichero que ya no existe, debido a que lo hemos movido. Crea un enlace simbólico a la nueva localización de la librería:
ln -sf ../../lib/libz.so.1 /usr/lib/libz.so |
Zlib no instala su página de manual. Ejecuta el siguiente comando para instalar esta documentación:
cp zlib.3 /usr/share/man/man3 |