Installer Bzip2

Installation de Bzip2

Installez Bzip2 en exécutant les commandes suivantes :



sed \
   s/"\$(CC) \$(CFLAGS) -o"/"\$(CC) \$(CFLAGS) \$(LDFLAGS) -o"/ \
   Makefile | make -f - LDFLAGS=-static &&
make PREFIX=$LFS/usr install &&
cd $LFS/usr/bin &&
mv bzcat bunzip2 bzip2 bzip2recover $LFS/bin

Explication des commandes

sed: Ici, la commande sed recherche les chaînes de caractères "$(CC) $(CFLAGS) -o" et les remplace par "$(CC) $(CFLAGS) $(LDFLAGS) -o" dans le fichier Makefile. Nous faisons cette modification pour qu'il soit plus aisé de faire l'édition de liens statique de bzip2.

...Makefile | make -f -: Makefile est le dernier paramètre de la commande sed, et indique le fichier dans lequel on recherche et remplace. Normalement, sed envoie le fichier modifié vers stdout (la sortie standard), qui serait la console. Avec la construction que nous utilisons, les sorties de sed seront injectées dans le programme make. Normalement, quand make est lancé, il cherche un certain nombre de fichiers comme Makefile. Mais nous avons modifié le fichier Makefile, aussi nous ne voulons pas que make l'utilise. Le paramètre "-f -" indique à make de lire son entrée depuis un autre fichier, ou depuis stdin (l'entrée standard), ce que le paramètre tiret (-) implique. C'est une des façons de procéder. Une autre manière aurait été de demander à sed d'écrire sa sortie dans un fichier différent, et d'indiquer à make, à l'aide du paramètre -f, de lire ce fichier alternatif.

LDFLAGS=-static: Ceci est la seconde manière que nous utilisons pour procéder à une édition de liens statique. C'est aussi la plus commune. La valeur -all-static n'est utilisée qu'avec les package binutils et gettext, et ne sera plus utilisée dans la suite de ce livre.

Contenu

Le package Bzip2 contient les programmes bzip2, bunzip2, bzcat et bzip2recover.

Description

bzip2

bzip2 compresse les fichiers avec l'algorithme de compression de texte par tri de blocs de Burrows-Wheeler, et le codage de Huffman. La compression est en général bien meilleure que celle obtenue par les compresseurs plus conventionnels basés sur LZ77/LZ78, et s'approche des performances de la famille PPM des compresseurs statistiques.

bunzip2

bunzip2 décompresse les fichiers qui ont été compressés avec bzip2.

bzcat

bzcat (ou bzip2 -dc) décompresse tous les fichiers spécifiés sur la sortie standard.

bzip2recover

bzip2recover restaure les données des fichiers bzip2 endommagés.