8.7.1. Installasjon av Bzip2
Bruk en oppdatering som vil installere dokumentasjonen for denne
pakken:
patch -Np1 -i ../bzip2-1.0.8-install_docs-1.patch
Følgende kommando sikrer at installasjonen av symbolske lenker er
relative:
sed -i 's@\(ln -s -f \)$(PREFIX)/bin/@\1@' Makefile
Sørg for at manualsidene er installert på riktig sted:
sed -i "s@(PREFIX)/man@(PREFIX)/share/man@g" Makefile
Forbered Bzip2 for kompilering med:
make -f Makefile-libbz2_so
make clean
Betydningen av make parameteren:
-
-f
Makefile-libbz2_so
-
Vil føre til at Bzip2 bygges med en annen Makefile fil, i dette tilfellet
Makefile-libbz2_so filen, som
skaper en dynamisk libbz2.so
bibliotek og lenker Bzip2 verktøyene mot det.
Kompiler og test pakken:
make
Installer programmene:
make PREFIX=/usr install
Installer det delte biblioteket:
cp -av libbz2.so.* /usr/lib
ln -sv libbz2.so.1.0.8 /usr/lib/libbz2.so
Navnet på det delte biblioteket er ikke standardisert, og det
varierer mellom distroer. Instruksjonen ovenfor har installert
libbz2.so.1.0, men noen
applikasjoner, for eksempel Kbd, forventer et annet navn
libbz2.so.1 som noen andre
distribusjoner bruker. Opprett en kompatibilitetssymbolsk lenke for
dem:
ln -sv libbz2.so.1.0.8 /usr/lib/libbz2.so.1
Notat
Symbollenke tilnærmingen er bare gyldig her fordi bibliotek
navnforskjellen er et resultat av forskjellige estetiske
synspunkter hos distro vedlikeholderne, ikke reelle ABI
inkompatibiliteter. Generelt indikerer en biblioteknavnforskjell
mest sannsynlig en ABI inkompatibilitet og det ville høyst
sannsynlig være ugyldig å «skjule» forskjellen via en symbolsk lenke.
Les Seksjon 8.2.1,
«Oppgraderingsproblemer» for detaljer om biblioteknavn.
Installer den delte bzip2 binær inn i /usr/bin mappen, og erstatt to eksemplarer av
bzip2 med symbolske
lenker:
cp -v bzip2-shared /usr/bin/bzip2
for i in /usr/bin/{bzcat,bunzip2}; do
ln -sfv bzip2 $i
done
Fjern et ubrukelig statisk bibliotek:
rm -fv /usr/lib/libbz2.a
8.7.2. Installasjon av Bzip2 - 32bit
Rens forrige bygg:
make clean
make -f Makefile-libbz2_so clean
Kompiler pakken:
sed -e "s/^CC=.*/CC=gcc -m32/" -i Makefile{,-libbz2_so}
make -f Makefile-libbz2_so
Installer pakken:
install -Dm755 libbz2.so.1.0.8 /usr/lib32/libbz2.so.1.0.8
ln -sf libbz2.so.1.0.8 /usr/lib32/libbz2.so
ln -sf libbz2.so.1.0.8 /usr/lib32/libbz2.so.1
8.7.3. Installasjon av Bzip2 - x32bit
Rens forrige bygg:
make clean
make -f Makefile-libbz2_so clean
Kompiler pakken:
sed -e "s/^CC=.*/CC=gcc -mx32/" -i Makefile{,-libbz2_so}
make -f Makefile-libbz2_so
Installer pakken:
install -Dm755 libbz2.so.1.0.8 /usr/libx32/libbz2.so.1.0.8
ln -sf libbz2.so.1.0.8 /usr/libx32/libbz2.so
ln -sf libbz2.so.1.0.8 /usr/libx32/libbz2.so.1