1 | This directory contains the zlib package, which is not part of GCC but
|
---|
2 | shipped with GCC as convenience.
|
---|
3 |
|
---|
4 | zlib 1.1.4 is a general purpose data compression library. All the code
|
---|
5 | is thread safe. The data format used by the zlib library
|
---|
6 | is described by RFCs (Request for Comments) 1950 to 1952 in the files
|
---|
7 | http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate
|
---|
8 | format) and rfc1952.txt (gzip format). These documents are also available in
|
---|
9 | other formats from ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html
|
---|
10 |
|
---|
11 | All functions of the compression library are documented in the file zlib.h
|
---|
12 | (volunteer to write man pages welcome, contact jloup@gzip.org). A usage
|
---|
13 | example of the library is given in the file example.c which also tests that
|
---|
14 | the library is working correctly. Another example is given in the file
|
---|
15 | minigzip.c. The compression library itself is composed of all source files
|
---|
16 | except example.c and minigzip.c.
|
---|
17 |
|
---|
18 | To compile all files and run the test program, follow the instructions
|
---|
19 | given at the top of Makefile. In short "make test; make install"
|
---|
20 | should work for most machines. For Unix: "./configure; make test; make install"
|
---|
21 | For MSDOS, use one of the special makefiles such as Makefile.msc.
|
---|
22 | For VMS, use Make_vms.com or descrip.mms.
|
---|
23 |
|
---|
24 | Questions about zlib should be sent to <zlib@gzip.org>, or to
|
---|
25 | Gilles Vollant <info@winimage.com> for the Windows DLL version.
|
---|
26 | The zlib home page is http://www.zlib.org or http://www.gzip.org/zlib/
|
---|
27 | Before reporting a problem, please check this site to verify that
|
---|
28 | you have the latest version of zlib; otherwise get the latest version and
|
---|
29 | check whether the problem still exists or not.
|
---|
30 |
|
---|
31 | PLEASE read the zlib FAQ http://www.gzip.org/zlib/zlib_faq.html
|
---|
32 | before asking for help.
|
---|
33 |
|
---|
34 | Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
|
---|
35 | issue of Dr. Dobb's Journal; a copy of the article is available in
|
---|
36 | http://dogma.net/markn/articles/zlibtool/zlibtool.htm
|
---|
37 |
|
---|
38 | The changes made in version 1.1.4 are documented in the file ChangeLog.
|
---|
39 | The only changes made since 1.1.3 are bug corrections:
|
---|
40 |
|
---|
41 | - ZFREE was repeated on same allocation on some error conditions.
|
---|
42 | This creates a security problem described in
|
---|
43 | http://www.zlib.org/advisory-2002-03-11.txt
|
---|
44 | - Returned incorrect error (Z_MEM_ERROR) on some invalid data
|
---|
45 | - Avoid accesses before window for invalid distances with inflate window
|
---|
46 | less than 32K.
|
---|
47 | - force windowBits > 8 to avoid a bug in the encoder for a window size
|
---|
48 | of 256 bytes. (A complete fix will be available in 1.1.5).
|
---|
49 |
|
---|
50 | The beta version 1.1.5beta includes many more changes. A new official
|
---|
51 | version 1.1.5 will be released as soon as extensive testing has been
|
---|
52 | completed on it.
|
---|
53 |
|
---|
54 |
|
---|
55 | Unsupported third party contributions are provided in directory "contrib".
|
---|
56 |
|
---|
57 | A Java implementation of zlib is available in the Java Development Kit
|
---|
58 | http://www.javasoft.com/products/JDK/1.1/docs/api/Package-java.util.zip.html
|
---|
59 | See the zlib home page http://www.zlib.org for details.
|
---|
60 |
|
---|
61 | A Perl interface to zlib written by Paul Marquess <pmarquess@bfsec.bt.co.uk>
|
---|
62 | is in the CPAN (Comprehensive Perl Archive Network) sites
|
---|
63 | http://www.cpan.org/modules/by-module/Compress/
|
---|
64 |
|
---|
65 | A Python interface to zlib written by A.M. Kuchling <amk@magnet.com>
|
---|
66 | is available in Python 1.5 and later versions, see
|
---|
67 | http://www.python.org/doc/lib/module-zlib.html
|
---|
68 |
|
---|
69 | A zlib binding for TCL written by Andreas Kupries <a.kupries@westend.com>
|
---|
70 | is availlable at http://www.westend.com/~kupries/doc/trf/man/man.html
|
---|
71 |
|
---|
72 | An experimental package to read and write files in .zip format,
|
---|
73 | written on top of zlib by Gilles Vollant <info@winimage.com>, is
|
---|
74 | available at http://www.winimage.com/zLibDll/unzip.html
|
---|
75 | and also in the contrib/minizip directory of zlib.
|
---|
76 |
|
---|
77 |
|
---|
78 | Notes for some targets:
|
---|
79 |
|
---|
80 | - To build a Windows DLL version, include in a DLL project zlib.def, zlib.rc
|
---|
81 | and all .c files except example.c and minigzip.c; compile with -DZLIB_DLL
|
---|
82 | The zlib DLL support was initially done by Alessandro Iacopetti and is
|
---|
83 | now maintained by Gilles Vollant <info@winimage.com>. Check the zlib DLL
|
---|
84 | home page at http://www.winimage.com/zLibDll
|
---|
85 |
|
---|
86 | From Visual Basic, you can call the DLL functions which do not take
|
---|
87 | a structure as argument: compress, uncompress and all gz* functions.
|
---|
88 | See contrib/visual-basic.txt for more information, or get
|
---|
89 | http://www.tcfb.com/dowseware/cmp-z-it.zip
|
---|
90 |
|
---|
91 | - For 64-bit Irix, deflate.c must be compiled without any optimization.
|
---|
92 | With -O, one libpng test fails. The test works in 32 bit mode (with
|
---|
93 | the -n32 compiler flag). The compiler bug has been reported to SGI.
|
---|
94 |
|
---|
95 | - zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1
|
---|
96 | it works when compiled with cc.
|
---|
97 |
|
---|
98 | - on Digital Unix 4.0D (formely OSF/1) on AlphaServer, the cc option -std1
|
---|
99 | is necessary to get gzprintf working correctly. This is done by configure.
|
---|
100 |
|
---|
101 | - zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works
|
---|
102 | with other compilers. Use "make test" to check your compiler.
|
---|
103 |
|
---|
104 | - gzdopen is not supported on RISCOS, BEOS and by some Mac compilers.
|
---|
105 |
|
---|
106 | - For Turbo C the small model is supported only with reduced performance to
|
---|
107 | avoid any far allocation; it was tested with -DMAX_WBITS=11 -DMAX_MEM_LEVEL=3
|
---|
108 |
|
---|
109 | - For PalmOs, see http://www.cs.uit.no/~perm/PASTA/pilot/software.html
|
---|
110 | Per Harald Myrvang <perm@stud.cs.uit.no>
|
---|
111 |
|
---|
112 |
|
---|
113 | Acknowledgments:
|
---|
114 |
|
---|
115 | The deflate format used by zlib was defined by Phil Katz. The deflate
|
---|
116 | and zlib specifications were written by L. Peter Deutsch. Thanks to all the
|
---|
117 | people who reported problems and suggested various improvements in zlib;
|
---|
118 | they are too numerous to cite here.
|
---|
119 |
|
---|
120 | Copyright notice:
|
---|
121 |
|
---|
122 | (C) 1995-2002 Jean-loup Gailly and Mark Adler
|
---|
123 |
|
---|
124 | This software is provided 'as-is', without any express or implied
|
---|
125 | warranty. In no event will the authors be held liable for any damages
|
---|
126 | arising from the use of this software.
|
---|
127 |
|
---|
128 | Permission is granted to anyone to use this software for any purpose,
|
---|
129 | including commercial applications, and to alter it and redistribute it
|
---|
130 | freely, subject to the following restrictions:
|
---|
131 |
|
---|
132 | 1. The origin of this software must not be misrepresented; you must not
|
---|
133 | claim that you wrote the original software. If you use this software
|
---|
134 | in a product, an acknowledgment in the product documentation would be
|
---|
135 | appreciated but is not required.
|
---|
136 | 2. Altered source versions must be plainly marked as such, and must not be
|
---|
137 | misrepresented as being the original software.
|
---|
138 | 3. This notice may not be removed or altered from any source distribution.
|
---|
139 |
|
---|
140 | Jean-loup Gailly Mark Adler
|
---|
141 | jloup@gzip.org madler@alumni.caltech.edu
|
---|
142 |
|
---|
143 | If you use the zlib library in a product, we would appreciate *not*
|
---|
144 | receiving lengthy legal documents to sign. The sources are provided
|
---|
145 | for free but without warranty of any kind. The library has been
|
---|
146 | entirely written by Jean-loup Gailly and Mark Adler; it does not
|
---|
147 | include third-party code.
|
---|
148 |
|
---|
149 | If you redistribute modified sources, we would appreciate that you include
|
---|
150 | in the file ChangeLog history information documenting your changes.
|
---|