6.16. Zlib-1.2.2

El paquete Zlib contiene rutinas de compresión y descompresión usadas por algunos programas.

Tiempo estimado de construcción: 0.1 SBU
Espacio requerido en disco: 2.7 MB
Para su instalación depende de: Binutils, Coreutils, GCC, Glibc, Make y Sed

6.16.1. Instalación de Zlib

Zlib tiene una vulnerabilidad de sobrecarga de pila que puede provocar un aaque de Denegación de Servicio. El siguiente parche corrige el problema:

patch -Np1 -i ../zlib-1.2.2-security_fix-1.patch
[Nota]

Nota

Se sabe que Zlib construye incorrectamente sus librerías si en el entorno se ha especificado un CFLAGS. Si estás usando tu propia variable CFLAGS, asegúrate de añadirle la directiva -fPIC durante el siguiente comando de configuración, y elimínala posteriormente.

Prepara Zlib para su compilación:

./configure --prefix=/usr --shared --libdir=/lib

Compila el paquete:

make

Para comprobar los resultados, ejecuta: make check.

Instala la librería compartida:

make install

El comando anterior instalo un fichero .so en /lib. Eliminalo y reenlazalo a /usr/lib:

rm /lib/libz.so
ln -sf ../../lib/libz.so.1.2.2 /usr/lib/libz.so

Construye también la librería estática:

make clean
./configure --prefix=/usr
make

Para obtener de nuevo los resultados de las pruebas, ejecuta: make check.

Instala la librería estática:

make install

Corrige los permisos de la librería estática:

chmod 644 /usr/lib/libz.a

Es una buena política y práctica común colocar las librerías importantes en el directorio /lib. Esto es muy importante en los casos en que /usr se encuentra en una partición separada. Esencialmente, las librerías con componentes en tiempo de ejecución usadas por los programas de /bin o /sbin deben residir en /lib para que estén en la partición raiz y disponibles en el caso de que /usr sea inaccesible.

Por esta razón movemos los componentes en tiempo de ejecución de la Zlib compartida a /lib:

mv /usr/lib/libz.so.* /lib

Corrige el enlace simbólico /usr/lib/libz.so:

ln -sf ../../lib/libz.so.1 /usr/lib/libz.so

6.16.2. Contenido de Zlib

Librerías instaladas: libz.[a,so]

Descripción corta

libz

Contiene funciones de compresión y descompresión usadas por algunos programas.