Installing Gzip-1.2.4a

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

Installation of Gzip

Before Gzip is installed, the patch file may need to be applied. This patch file is necessary to avoid a conflict of variable names with Glibc-2.0 systems when compiling and linking statically and so is only required if your base system runs Glibc-2.0. It is however safe to apply the patch even if you are running a different glibc version, so if you aren't sure, it's best to apply it.

Apply the patch by running the following command:

patch -Np1 -i ../gzip-1.2.4a.patch

Install Gzip by running the following commands:

./configure --prefix=$LFS/usr &&
make LDFLAGS=-static &&
make install &&
cp $LFS/usr/bin/gunzip $LFS/usr/bin/gzip $LFS/bin &&
rm $LFS/usr/bin/gunzip $LFS/usr/bin/gzip

Command explanations

cp $LFS/usr/bin/gunzip $LFS/usr/bin/gzip $LFS/bin && rm $LFS/usr/bin/gunzip $LFS/usr/bin/gzip: The reason we don't simply use "mv" to move the files to the new location is because gunzip is a hardlink to gzip. On older distributions you can't move a hardlink to another partition (and it's very possible that $LFS and $LFS/usr are separate partitions). With more recent distributions this isn't a problem. If you run mv to move hardlinks across partitions it'll just do a regular "cp" and discard the hardlink. But, we can't assume that every host distribution has a new enough kernel and fileutils that works this way.

Contents of gzip-1.2.4a

Program Files

gunzip (link to gzip), gzexe, gzip, uncompress (link to gunzip), zcat (link to gzip), zcmp, zdiff, zforce, zgrep, zmore and znew

Description

gunzip, uncompress

gunzip and uncompress decompress files which are compressed with gzip.

gzexe

gzexe allows you to compress executables in place and have them automatically uncompress and execute when they are run (at a penalty in performance).

gzip

gzip reduces the size of the named files using Lempel-Ziv coding (LZ77).

zcat

zcat uncompresses either a list of files on the command line or its standard input and writes the uncompressed data on standard output

zcmp

zcmp invokes the cmp program on compressed files.

zdiff

zdiff invokes the diff program on compressed files.

zforce

zforce forces a .gz extension on all gzip files so that gzip will not compress them twice. This can be useful for files with names truncated after a file transfer.

zgrep

zgrep invokes the grep program on compressed files.

zmore

zmore is a filter which allows examination of compressed or plain text files one screen at a time on a soft-copy terminal (similar to the more program).

znew

znew re-compresses files from .Z (compress) format to .gz (gzip) format.

Dependencies

Gzip-1.2.4a needs the following to be installed:


bash: sh
binutils: as, ld, nm
fileutils: chmod, cp, install, ln, mv, rm
gcc: cc1, collect2, cpp, cpp0, gcc
grep: egrep, grep
make: make
sed: sed
sh-utils: hostname
textutils: cat, tr