Linux From Scratch: Version 5.0 | ||
---|---|---|
Zurück | Kapitel 6. Installieren der grundlegenden System Software | Weiter |
Geschätzte Kompilierzeit: 0.1 SBU Ungefähr benötigter Festplattenplatz: 1.5 MB |
Zlib enthält die Bibliothek libz. Sie wird von vielen Programmen zum komprimieren und dekomprimieren genutzt.
Installierte Bibliotheken: libz[a,so]
Zlib ist abhängig von: Binutils, Coreutils, GCC, Glibc, Make, Sed.
Zlib enthält einen potentiellen Pufferüberlauf in der gzprintf() Funktion, welcher, wenn er auch schwierig auszunutzen ist, durch den folgenden Patch behoben werden sollte:
patch -Np1 -i ../zlib-1.1.4-vsnprintf.patch |
Bereiten sie Zlib zum kompilieren vor:
./configure --prefix=/usr --shared |
Vorsicht: Zlib baut seine gemeinsamen Bibliotheken falsch wenn die CFLAGS Umgebungsvariable gesetzt ist. Wenn sie die CFLAGS Umgebungsvariable verwenden, fügen sie ihr während dem bauen und der Installation von Zlib -fPIC an und entfernen sie es später wieder.
Kompilieren sie das Paket:
make |
Installieren sie die gemeinsamen Bibliotheken:
make install |
Kompilieren sie nun die nicht-gemeinsamen Bibliotheken:
make clean ./configure --prefix=/usr make |
Dieses Paket enthält eine Test-suite um zu prüfen ob alles korrekt kompiliert wurde. Wenn sie sie ausführen möchten, erledigt dies das folgende Kommando für sie:
make test |
Und installieren sie das Paket:
make install |
Die gemeinsame Zlib Bibliothek sollte in /lib installiert werden. Auf diese Weise haben beim booten, während /usr möglicherweise noch nicht verfübar ist, Systemprogramme trotzdem Zugriff zu dieser Bibliothek:
mv /usr/lib/libz.so.* /lib |
Der symbolische Link /usr/lib/libz.so zeigt auf eine Datei die nicht mehr existiert, weil wir sie gerade verschoben haben. Erstellen sie den symbolischen Link neu, so dass er auf den neuen Standort der Bibliothek zeigt:
ln -sf ../../lib/libz.so.1 /usr/lib/libz.so |
Zlib installiert seine Man-pages nicht. Holen sie das mit dem folgenden Kommando nach:
cp zlib.3 /usr/share/man/man3 |
Zurück | Zum Anfang | Weiter |
Installieren von Coreutils-5.0 | Nach oben | Installieren von Lfs-Utils-0.3 |