6.30. Installing Bzip2-1.0.2

Estimated build time:           1 minute
Estimated required disk space:  2 MB

6.30.1. Installation of Bzip2

Install Bzip2 by running the following commands:

make -f Makefile-libbz2_so &&
make &&
rm /usr/bin/bz* &&
make PREFIX=/usr install &&
cp bzip2-shared /bin/bzip2 &&
ln -s libbz2.so.1.0 libbz2.so &&
cp -a libbz2.so* /lib &&
cd /usr/lib &&
ln -sf ../../lib/libbz2.so &&
cd /usr/bin &&
rm bunzip2 bzcat bzip2 &&
rm /bin/bzless /bin/bzmore &&
mv bzip2recover bzless bzmore /bin &&
cd /bin &&
ln -sf bzip2 bunzip2 &&
ln -sf bzip2 bzcat

Although it's not strictly a part of a basic LFS system it's worth mentioning that a patch for Tar can be downloaded which enables the tar program to compress and uncompress using bzip2/bunzip2 easily. With a plain tar, you have to use constructions like bzcat file.tar.bz|tar xv or tar --use-compress-prog=bunzip2 -xvf file.tar.bz2 to use bzip2 and bunzip2 with tar. This patch provides the -j option so you can unpack a Bzip2 archive with tar xvfj file.tar.bz2. Applying this patch will be mentioned later on when the Tar package is re-installed.

6.30.2. Command explanations

make -f Makefile-libbz2_so: This will cause bzip2 to be built using a different Makefile file, in this case the Makefile-libbz2_so file which creates a dynamic libbz2.so library and links the bzip2 utilities against it.

6.30.3. Contents of bzip2-1.0.1

6.30.4. Dependencies

Bzip2-1.0.1 needs the following to be installed:


bash: sh
binutils: ar, as, ld, ranlib
fileutils: cp, ln, rm
gcc: cc1, collect2, cpp0, gcc
make: make