Requirements
------------
You will need a C++98 compiler with support for 'long long'.
(gcc 3.3.6 or newer is recommended).
I use gcc 6.1.0 and 3.3.6, but the code should compile with any standards
compliant compiler.
Gcc is available at http://gcc.gnu.org
Lzip is available at http://www.nongnu.org/lzip/lzip.html

POSIX compliant versions of diff and grep are required for zdiff and zgrep.

(Option -L of zgrep fails (prints wrong results, returns wrong status, and
even hangs) when using GNU grep versions 3.2 to 3.4 inclusive because of a
wrong change in the exit status of grep, which was reverted in GNU grep 3.5).

Compressors for bzip2, gzip and lzip formats are required to run the tests.

If you are installing zutils along with GNU gzip and want to keep the
gzip scripts, the recommended method (until the maintainers of gzip rename
the scripts upstream) is to configure gzip as follows:

   ./configure --program-transform-name='s/^z/gz/'

This renames, at installation time, the gzip scripts and man pages to
'gzcat', 'gzcat.1', etc, avoiding the name clashing with the programs and
man pages from zutils.


Procedure
---------
1. Unpack the archive if you have not done so already:

	tar -xf zutils[version].tar.lz
or
	lzip -cd zutils[version].tar.lz | tar -xf -

This creates the directory ./zutils[version] containing the source code
extracted from the archive.

2. Change to zutils directory and run configure.
   (Try 'configure --help' for usage instructions).

	cd zutils[version]
	./configure

3. Run make.

	make

4. Optionally, type 'make check' to run the tests that come with zutils.

5. Type 'make install' to install the programs and any data files and
   documentation. You need root privileges to install into a prefix owned
   by root.

   Or type 'make install-compress', which additionally compresses the
   info manual and the man pages after installation.
   (Installing compressed docs may become the default in the future).

   You can install only the programs, the info manual, or the man pages by
   typing 'make install-bin', 'make install-info', or 'make install-man'
   respectively.


Another way
-----------
You can also compile zutils into a separate directory.
To do this, you must use a version of 'make' that supports the variable
'VPATH', such as GNU 'make'. 'cd' to the directory where you want the
object files and executables to go and run the 'configure' script.
'configure' automatically checks for the source code in '.', in '..', and
in the directory that 'configure' is in.

'configure' recognizes the option '--srcdir=DIR' to control where to look
for the source code. Usually 'configure' can determine that directory
automatically.

After running 'configure', you can run 'make' and 'make install' as
explained above.


Copyright (C) 2009-2026 Antonio Diaz Diaz.

This file is free documentation: you have unlimited permission to copy,
distribute, and modify it.
