]> git.cworth.org Git - gzip/blob - README
Imported Debian patch 1.3.9-1
[gzip] / README
1 This is the file README for the gzip distribution.
2
3 gzip (GNU zip) is a compression utility designed to be a replacement
4 for 'compress'. Its main advantages over compress are much better
5 compression and freedom from patented algorithms.  The GNU Project
6 uses it as the standard compression program for its system.
7
8 gzip currently uses by default the LZ77 algorithm used in zip 1.9 (the
9 portable pkzip compatible archiver). The gzip format was however
10 designed to accommodate several compression algorithms. See below
11 for a comparison of zip and gzip.
12
13 gunzip can currently decompress files created by gzip, compress or
14 pack. The detection of the input format is automatic.  For the
15 gzip format, gunzip checks a 32 bit CRC. For pack, gunzip checks the
16 uncompressed length.  The 'compress' format was not designed to allow
17 consistency checks. However gunzip is sometimes able to detect a bad
18 .Z file because there is some redundancy in the .Z compression format.
19 If you get an error when uncompressing a .Z file, do not assume that
20 the .Z file is correct simply because the standard uncompress does not
21 complain.  This generally means that the standard uncompress does not
22 check its input, and happily generates garbage output.
23
24 gzip produces files with a .gz extension. Previous versions of gzip
25 used the .z extension, which was already used by the 'pack'
26 Huffman encoder. gunzip is able to decompress .z files (packed
27 or gzip'ed).
28
29 Several planned features are not yet supported (see the file TODO).
30 See the file NEWS for a summary of changes since 0.5.  See the file
31 INSTALL for installation instructions. Some answers to frequently
32 asked questions are given in the file INSTALL, please read it. (In
33 particular, please don't ask me once more for an /etc/magic entry.)
34
35 WARNING: on several systems, compiler bugs cause gzip to fail, in
36 particular when optimization options are on.  See the section "Special
37 targets" at the end of the INSTALL file for a list of known problems.
38 For all machines, use "make check" to check that gzip was compiled
39 correctly.  Try compiling gzip without any optimization if you have a
40 problem.
41
42 Please send all comments and bug reports by electronic mail to
43 <bug-gzip@gnu.org>.
44
45 Bug reports should ideally include:
46
47     * The complete output of "gzip -V" (or the contents of revision.h
48       if you can't get gzip to compile)
49     * The hardware and operating system (try "uname -a")
50     * The compiler used to compile (if it is gcc, use "gcc -v")
51     * A description of the bug behavior
52     * The input to gzip, that triggered the bug
53
54 If you send me patches for machines I don't have access to, please test them
55 very carefully. gzip is used for backups, it must be extremely reliable.
56
57 GNU tar 1.11.2 has a -z option to invoke directly gzip, so you don't have to
58 patch it. The package ftp.uu.net:/languages/emacs-lisp/misc/jka-compr19.el.Z
59 also supports gzip'ed files.
60
61 The znew and gzexe shell scripts provided with gzip benefit from
62 (but do not require) the cpmod utility to transfer file attributes.
63 It is available in
64 ftp://gatekeeper.dec.com/pub/usenet/comp.sources.unix/volume11/cpmod.Z.
65
66 The sample programs zread.c, sub.c and add.c in subdirectory sample
67 are provided as examples of useful complements to gzip. Read the
68 comments inside each source file.  The perl script ztouch is also
69 provided as example (not installed by default since it relies on perl).
70
71
72 gzip is free software, you can redistribute it and/or modify it under
73 the terms of the GNU General Public License, a copy of which is
74 provided under the name COPYING. The latest version of gzip are always
75 available from ftp://ftp.gnu.org/gnu/gzip or in any of the gnu
76 mirror sites.
77
78 - sources in gzip-*.tar (or .shar or .tar.gz).
79 - MSDOS lha self-extracting exe in gzip-msdos-*.exe. Once extracted,
80   copy gzip.exe to gunzip.exe and zcat.exe, or use "gzip -d" to decompress.
81   gzip386.exe runs much faster but only on 386 and above; it was compiled with
82   djgpp 1.10 available in directory omnigate.clarkson.edu:/pub/msdos/djgpp.
83
84 A VMS executable is in ftp://ftp.spc.edu/[.macro32.savesets]gzip-1-*.zip
85 (use [.macro32]unzip.exe to extract). A PRIMOS executable is available
86 in ftp://ftp.lysator.liu.se/pub/primos/run/gzip.run.
87
88 Some ftp servers can automatically make a tar.Z from a tar file. If
89 you are getting gzip for the first time, you can ask for a tar.Z file
90 instead of the much larger tar file.
91
92 Many thanks to those who provided me with bug reports and feedback.
93 See the files THANKS and ChangeLog for more details.
94
95
96                 Note about zip vs. gzip:
97
98 The name 'gzip' was a very unfortunate choice, because zip and gzip
99 are two really different programs, although the actual compression and
100 decompression sources were written by the same persons. A different
101 name should have been used for gzip, but it is too late to change now.
102
103 zip is an archiver: it compresses several files into a single archive
104 file. gzip is a simple compressor: each file is compressed separately.
105 Both share the same compression and decompression code for the
106 'deflate' method.  unzip can also decompress old zip archives
107 (implode, shrink and reduce methods). gunzip can also decompress files
108 created by compress and pack. zip 1.9 and gzip do not support
109 compression methods other than deflation. (zip 1.0 supports shrink and
110 implode). Better compression methods may be added in future versions
111 of gzip. zip will always stick to absolute compatibility with pkzip,
112 it is thus constrained by PKWare, which is a commercial company.  The
113 gzip header format is deliberately different from that of pkzip to
114 avoid such a constraint.
115
116 On Unix, gzip is mostly useful in combination with tar. GNU tar
117 1.11.2 and later has a -z option to invoke gzip automatically.  "tar -z"
118 compresses better than zip, since gzip can then take advantage of
119 redundancy between distinct files. The drawback is that you must
120 scan the whole tar.gz file in order to extract a single file near
121 the end; unzip can directly seek to the end of the zip file. There
122 is no overhead when you extract the whole archive anyway.
123 If a member of a .zip archive is damaged, other files can still
124 be recovered. If a .tar.gz file is damaged, files beyond the failure
125 point cannot be recovered. (Future versions of gzip will have
126 error recovery features.)
127
128 gzip and gunzip are distributed as a single program. zip and unzip
129 are, for historical reasons, two separate programs, although the
130 authors of these two programs work closely together in the info-zip
131 team. zip and unzip are not associated with the GNU project.
132 See http://www.cdrom.com/pub/infozip/ for more about zip and unzip.
133
134
135 ========================================================================
136
137 Copyright (C) 1999, 2001, 2002, 2006 Free Software Foundation, Inc.
138 Copyright (C) 1992, 1993 Jean-loup Gailly
139
140 Permission is granted to copy, distribute and/or modify this document
141 under the terms of the GNU Free Documentation License, Version 1.2 or
142 any later version published by the Free Software Foundation; with no
143 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
144 Texts.  A copy of the license is included in the ``GNU Free
145 Documentation License'' file as part of this distribution.