xref: /gzip/
Name Date Size

..29-Nov-20194 KiB

.gitignoreH A D13-Aug-2017404

.gitmodulesH A D13-Aug-201789

.mailmapH A D13-Aug-201769

.prev-versionH A D30-Dec-20185

algorithm.docH A D19-Sep-20177.5 KiB

AUTHORSH A D13-Aug-201798

bits.cH A D01-Jan-20206.2 KiB

bootstrapH A D01-Jan-202032.8 KiB

bootstrap.confH A D01-Jan-20201.9 KiB

cfg.mkH A D01-Jan-20203.5 KiB

ChangeLog-2007H A D01-Jan-202070.4 KiB

configure.acH A D10-Jan-20209.6 KiB

COPYINGH A D13-Aug-201734.3 KiB

deflate.cH A D01-Jan-202031.3 KiB

dfltcc.cH A D10-Jan-202013 KiB

dist-check.mkH A D13-Aug-20176.4 KiB

doc/H05-Jan-20204 KiB

gnulib/H13-Aug-20174 KiB

gunzip.1H A D13-Aug-201716

gunzip.inH A D01-Jan-20202.3 KiB

gzexe.1H A D13-Aug-20171.4 KiB

gzexe.inH A D01-Jan-20206.2 KiB

gzip.1H A D01-Jan-202016 KiB

gzip.cH A D01-Jan-202065.7 KiB

gzip.hH A D01-Jan-202011.1 KiB

inflate.cH A D01-Jan-202031.8 KiB

lib/H01-Jan-20204 KiB

lzw.cH A D13-Aug-2017513

lzw.hH A D01-Jan-20202 KiB

m4/H01-Jan-20204 KiB

Makefile.amH A D01-Jan-20205.3 KiB

NEWSH A D01-Jan-202022.9 KiB

READMEH A D01-Jan-20206 KiB

README-hackingH A D01-Jan-20201.9 KiB

revision.hH A D01-Jan-20201 KiB

sample/H13-Aug-20174 KiB

tailor.hH A D01-Jan-20204.8 KiB

tests/H10-Jan-20204 KiB

THANKSH A D13-Aug-201713 KiB

TODOH A D01-Jan-20203.4 KiB

trees.cH A D01-Jan-202040.2 KiB

unlzh.cH A D13-Aug-201710 KiB

unlzw.cH A D13-Aug-20178.7 KiB

unpack.cH A D01-Jan-20209.4 KiB

unzip.cH A D01-Jan-20207.2 KiB

util.cH A D01-Jan-202015 KiB

zcat.1H A D13-Aug-201716

zcat.inH A D01-Jan-20201.9 KiB

zcmp.1H A D13-Aug-201717

zcmp.inH A D01-Jan-20201.6 KiB

zdiff.1H A D13-Aug-2017864

zdiff.inH A D01-Jan-20205.7 KiB

zegrep.inH A D13-Aug-201729

zfgrep.inH A D13-Aug-201729

zforce.1H A D13-Aug-2017591

zforce.inH A D01-Jan-20202 KiB

zgrep.1H A D13-Aug-20171.1 KiB

zgrep.inH A D01-Jan-20207.4 KiB

zip.cH A D01-Jan-20204 KiB

zless.1H A D01-Jan-20201.9 KiB

zless.inH A D01-Jan-20202.2 KiB

zmore.1H A D13-Aug-20173.6 KiB

zmore.inH A D01-Jan-20201.8 KiB

znew.1H A D13-Aug-20171.1 KiB

znew.inH A D01-Jan-20204.5 KiB


1This is the file README for the gzip distribution.
3The GNU gzip home page is https://www.gnu.org/software/gzip.
5gzip (GNU zip) is a compression utility designed to be a replacement
6for 'compress'. Its main advantages over compress are much better
7compression and freedom from patented algorithms.  The GNU Project
8uses it as the standard compression program for its system.
10gzip currently uses by default the LZ77 algorithm used in zip 1.9 (the
11portable pkzip compatible archiver). The gzip format was however
12designed to accommodate several compression algorithms. See below
13for a comparison of zip and gzip.
15gunzip can currently decompress files created by gzip, compress or
16pack. The detection of the input format is automatic.  For the
17gzip format, gunzip checks a 32 bit CRC. For pack, gunzip checks the
18uncompressed length.  The 'compress' format was not designed to allow
19consistency checks. However gunzip is sometimes able to detect a bad
20.Z file because there is some redundancy in the .Z compression format.
21If you get an error when uncompressing a .Z file, do not assume that
22the .Z file is correct simply because the standard uncompress does not
23complain.  This generally means that the standard uncompress does not
24check its input, and happily generates garbage output.
26gzip produces files with a .gz extension. Previous versions of gzip
27used the .z extension, which was already used by the 'pack'
28Huffman encoder. gunzip is able to decompress .z files (packed
29or gzip'ed).
31Several planned features are not yet supported (see the file TODO).
32See the file NEWS for a summary of changes since the last release.
33See the file INSTALL for installation instructions.
35WARNING: gzip is sensitive to compiler bugs, particularly when
36optimizing.  Use "make check" to check that gzip was compiled
37correctly.  Try compiling gzip without any optimization if you have a
40Please send all comments and bug reports by electronic mail to
43Bug reports should ideally include:
45    * The complete output of "gzip -V" (or the contents of revision.h
46      if you can't get gzip to compile)
47    * The hardware and operating system (try "uname -a")
48    * The compiler used to compile (if it is gcc, use "gcc -v")
49    * A description of the bug behavior
50    * The input to gzip, that triggered the bug
52If you send me patches for machines I don't have access to, please test them
53very carefully. gzip is used for backups, it must be extremely reliable.
55The znew and gzexe shell scripts provided with gzip benefit from
56(but do not require) the (non-GNU) cpmod utility to transfer file attributes.
58The sample programs zread.c, sub.c and add.c in subdirectory sample
59are provided as examples of useful complements to gzip. Read the
60comments inside each source file.  The perl script ztouch is also
61provided as example (not installed by default since it relies on perl).
64gzip is free software, you can redistribute it and/or modify it under
65the terms of the GNU General Public License, a copy of which is
66provided under the name COPYING. The latest version of gzip is always
67available from https://ftp.gnu.org/gnu/gzip or in any of the GNU
68mirror sites.
70Many thanks to those who provided me with bug reports and feedback.
71See the files THANKS and ChangeLog for more details.
74                Note about zip vs. gzip:
76The name 'gzip' was a very unfortunate choice, because zip and gzip
77are two really different programs, although the actual compression and
78decompression sources were written by the same persons. A different
79name should have been used for gzip, but it is too late to change now.
81zip is an archiver: it compresses several files into a single archive
82file. gzip is a simple compressor: each file is compressed separately.
83Both share the same compression and decompression code for the
84'deflate' method.  unzip can also decompress old zip archives
85(implode, shrink and reduce methods). gunzip can also decompress files
86created by compress and pack. zip 1.9 and gzip do not support
87compression methods other than deflation. (zip 1.0 supports shrink and
88implode). Better compression methods may be added in future versions
89of gzip. zip will always stick to absolute compatibility with pkzip,
90it is thus constrained by PKWare, which is a commercial company.  The
91gzip header format is deliberately different from that of pkzip to
92avoid such a constraint.
94On Unix, gzip is mostly useful in combination with tar. GNU tar
951.11.2 and later has a -z option to invoke gzip automatically.  "tar -z"
96compresses better than zip, since gzip can then take advantage of
97redundancy between distinct files. The drawback is that you must
98scan the whole tar.gz file in order to extract a single file near
99the end; unzip can directly seek to the end of the zip file. There
100is no overhead when you extract the whole archive anyway.
101If a member of a .zip archive is damaged, other files can still
102be recovered. If a .tar.gz file is damaged, files beyond the failure
103point cannot be recovered. (Future versions of gzip will have
104error recovery features.)
106gzip and gunzip are distributed as a single program. zip and unzip
107are, for historical reasons, two separate programs, although the
108authors of these two programs work closely together in the Info-ZIP
109team. zip and unzip are not associated with the GNU project.
110See http://info-zip.org/ for more about zip and unzip.
113For any copyright year range specified as YYYY-ZZZZ in this package
114note that the range specifies every single year in that closed interval.
118Copyright (C) 1999, 2001-2002, 2006-2007, 2009-2020 Free Software Foundation,
120Copyright (C) 1992, 1993 Jean-loup Gailly
122Permission is granted to copy, distribute and/or modify this document
123under the terms of the GNU Free Documentation License, Version 1.3 or
124any later version published by the Free Software Foundation; with no
125Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
126Texts.  A copy of the license is included in the ``GNU Free
127Documentation License'' file as part of this distribution.


1-*- outline -*-
3These notes intend to help people working on the CVS version of
4this package.
6* Requirements
8Only the sources are installed in the CVS repository (to ease the
9maintenance, merges etc.), therefore you will have to get the latest
10stable versions of the maintainer tools we depend upon, including:
12- Automake <https://www.gnu.org/software/automake/>
13- Autoconf <https://www.gnu.org/software/autoconf/>
14- Tar <https://www.gnu.org/software/tar/>
15- Wget <https://www.gnu.org/software/wget/>
17Valgrind <http://valgrind.org/> is also highly recommended, if
18Valgrind supports your architecture.
20Only building the initial full source tree will be a bit painful,
21later, a plain `cvs update -P && make' should be sufficient.
23* First CVS checkout
25Obviously, if you are reading these notes, you did manage to check out
26this package from CVS.  The next step is to get other files needed to
27build, which are extracted from other source packages:
29        $ ./bootstrap
31And there you are!  Just
33        $ ./configure
34        $ make
35        $ make check
37At this point, there should be no difference between your local copy,
38and the CVS master copy:
40        $ cvs diff
42should output no difference.
48Copyright (C) 2002-2006, 2009-2020 Free Software Foundation, Inc.
50This program is free software; you can redistribute it and/or modify
51it under the terms of the GNU General Public License as published by
52the Free Software Foundation; either version 3, or (at your option)
53any later version.
55This program is distributed in the hope that it will be useful,
56but WITHOUT ANY WARRANTY; without even the implied warranty of
58GNU General Public License for more details.
60You should have received a copy of the GNU General Public License
61along with this program; if not, write to the Free Software
62Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
6302110-1301, USA.