# Bzip2-&bzip2-version;

The Bzip2 package contains programs for compressing and decompressing files. Compressing text files with `bzip2` yields a much better compression percentage than with the traditional `gzip`.

## Installation of Bzip2

By default Bzip2 creates some symlinks that use absolute pathnames. The following sed will cause them to be created with relative paths instead:

    sed -i -e 's:ln -s -f $(PREFIX)/bin/:ln -s :' Makefile

The Bzip2 package does not contain a `configure` script. Compile it with:

    make -f Makefile-libbz2_so
    make clean

The `-f` flag 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.

Recompile the package using a non-shared library and test it:

    make

Install the programs:

    make PREFIX=/usr install

Install the shared `bzip2` binary into the `/bin` directory, make some necessary symbolic links, and clean up:

    cp -v bzip2-shared /bin/bzip2
    cp -av libbz2.so* /lib
    ln -sv ../../lib/libbz2.so.1.0 /usr/lib/libbz2.so
    rm -v /usr/bin/{bunzip2,bzcat,bzip2}
    ln -sv bzip2 /bin/bunzip2
    ln -sv bzip2 /bin/bzcat

## Contents of Bzip2

Installed programs Installed libraries
- bunzip2 (link to bzip2), bzcat (link to bzip2), bzcmp (link to bzdiff), bzdiff, bzegrep (link to bzgrep), bzfgrep (link to bzgrep), bzgrep, bzip2, bzip2recover, bzless (link to bzmore), and bzmore libbz2.a, libbz2.so (link to libbz2.so.1.0), libbz2.so.1.0 (link to libbz2.so.&bzip2-version;), and libbz2.so.&bzip2-version;

Short Descriptions

`bunzip2`

- Decompresses bzipped files

`bzcat`

- Decompresses to standard output

`bzcmp`

- Runs `cmp` on bzipped files

`bzdiff`

- Runs `diff` on bzipped files

`bzegrep`

- Runs `egrep` on bzipped files

`bzfgrep`

- Runs `fgrep` on bzipped files

`bzgrep`

- Runs `grep` on bzipped files

`bzip2`

- Compresses files using the Burrows-Wheeler block sorting text compression algorithm with Huffman coding; the compression rate is better than that achieved by more conventional compressors using Lempel-Ziv algorithms, like `gzip`

`bzip2recover`

- Tries to recover data from damaged bzipped files

`bzless`

- Runs `less` on bzipped files

`bzmore`

- Runs `more` on bzipped files

`libbz2*`

- The library implementing lossless, block-sorting data compression, using the Burrows-Wheeler algorithm