1zlib 1.0.4 is a general purpose data compression library. All the code 2is reentrant (thread safe). The data format used by the zlib library
| 1zlib 1.1.1 is a general purpose data compression library. All the code 2is thread safe. The data format used by the zlib library
|
3is described by RFCs (Request for Comments) 1950 to 1952 in the files 4ftp://ds.internic.net/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate 5format) and rfc1952.txt (gzip format). These documents are also available in 6other formats from ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html 7
| 3is described by RFCs (Request for Comments) 1950 to 1952 in the files 4ftp://ds.internic.net/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate 5format) and rfc1952.txt (gzip format). These documents are also available in 6other formats from ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html 7
|
8All functions of the compression library are documented in the file 9zlib.h. A usage example of the library is given in the file example.c 10which also tests that the library is working correctly. Another 11example is given in the file minigzip.c. The compression library itself 12is composed of all source files except example.c and minigzip.c.
| 8All functions of the compression library are documented in the file zlib.h 9(volunteer to write man pages welcome, contact jloup@gzip.org). A usage 10example of the library is given in the file example.c which also tests that 11the library is working correctly. Another example is given in the file 12minigzip.c. The compression library itself is composed of all source files 13except example.c and minigzip.c.
|
13 14To compile all files and run the test program, follow the instructions 15given at the top of Makefile. In short "make test; make install" 16should work for most machines. For MSDOS, use one of the special 17makefiles such as Makefile.msc; for VMS, use Make_vms.com or descrip.mms. 18 19Questions about zlib should be sent to <zlib@quest.jpl.nasa.gov> or, 20if this fails, to the addresses given below in the Copyright section.
| 14 15To compile all files and run the test program, follow the instructions 16given at the top of Makefile. In short "make test; make install" 17should work for most machines. For MSDOS, use one of the special 18makefiles such as Makefile.msc; for VMS, use Make_vms.com or descrip.mms. 19 20Questions about zlib should be sent to <zlib@quest.jpl.nasa.gov> or, 21if this fails, to the addresses given below in the Copyright section.
|
21The zlib home page is http://quest.jpl.nasa.gov/zlib/
| 22The zlib home page is http://www.cdrom.com/pub/infozip/zlib/ 23The official zlib ftp site is ftp://ftp.cdrom.com/pub/infozip/zlib/ 24Mark Nelson wrote an article about zlib for the Jan. 1997 issue of 25Dr. Dobb's Journal; a copy of the article is available in 26http://web2.airmail.net/markn/articles/zlibtool/zlibtool.htm
|
22
| 27
|
23The changes made in version 1.0.4 are documented in the file ChangeLog. 24The main changes since 1.0.3 are:
| 28The changes made in version 1.1.1 are documented in the file ChangeLog. 29The main changes since 1.1.0 are:
|
25
| 30
|
26- In very rare conditions, deflate(s, Z_FINISH) could fail to produce an EOF 27 bit, so the decompressor could decompress all the correct data but went 28 on to attempt decompressing extra garbage data. This affected minigzip too. 29- zlibVersion and gzerror return const char* (needed for DLL) 30- port to RISCOS (no fdopen, no multiple dots, no unlink, no fileno)
| 31- fix macros _tr_tally_* in deflate.h for debug mode (Glenn Randers-Pehrson) 32- remove block truncation heuristic which had very marginal effect for zlib 33 (smaller lit_bufsize than in gzip 1.2.4) and degraded a little the 34 compression ratio on some files. This also allows inlining _tr_tally for 35 matches in deflate_slow.
|
31 32
| 36 37
|
| 38Unsupported third party contributions are provided in directory "contrib". 39 40A Java implementation of zlib is available in the Java Development Kit 1.1 41http://www.javasoft.com/products/JDK/1.1/docs/api/Package-java.util.zip.html 42See the zlib home page http://www.cdrom.com/pub/infozip/zlib/ for details. 43
|
33A Perl interface to zlib written by Paul Marquess <pmarquess@bfsec.bt.co.uk> 34is in the CPAN (Comprehensive Perl Archive Network) sites, such as: 35ftp://ftp.cis.ufl.edu/pub/perl/CPAN/modules/by-module/Compress/Compress-Zlib* 36
| 44A Perl interface to zlib written by Paul Marquess <pmarquess@bfsec.bt.co.uk> 45is in the CPAN (Comprehensive Perl Archive Network) sites, such as: 46ftp://ftp.cis.ufl.edu/pub/perl/CPAN/modules/by-module/Compress/Compress-Zlib* 47
|
| 48A Python interface to zlib written by A.M. Kuchling <amk@magnet.com> 49is available from the Python Software Association sites, such as: 50ftp://ftp.python.org/pub/python/contrib/Encoding/zlib*.tar.gz
|
37
| 51
|
| 52An experimental package to read files in .zip format, written on top of 53zlib by Gilles Vollant <info@winimage.com>, is available at 54http://www.winimage.com/zLibDll/unzip.html 55 56
|
38Notes for some targets: 39
| 57Notes for some targets: 58
|
40- For Turbo C the small model is supported only with reduced performance to 41 avoid any far allocation; it was tested with -DMAX_WBITS=11 -DMAX_MEM_LEVEL=3
| 59- To build a Windows DLL version, include in a DLL project zlib.def, zlib.rc 60 and all .c files except example.c and minigzip.c; compile with -DZLIB_DLL 61 The zlib DLL support was initially done by Alessandro Iacopetti and is 62 now maintained by Gilles Vollant <info@winimage.com>. Check the zlib DLL 63 home page at http://www.winimage.com/zLibDll
|
42
| 64
|
43- For 64-bit Iris, deflate.c must be compiled without any optimization.
| 65 From Visual Basic, you can call the DLL functions which do not take 66 a structure as argument: compress, uncompress and all gz* functions. 67 See contrib/visual-basic.txt for more information. 68 I don't know how to handle structures in Visual Basic, sorry. 69 70- For 64-bit Irix, deflate.c must be compiled without any optimization.
|
44 With -O, one libpng test fails. The test works in 32 bit mode (with
| 71 With -O, one libpng test fails. The test works in 32 bit mode (with
|
45 the -32 compiler flag). The compiler bug has been reported to SGI.
| 72 the -n32 compiler flag). The compiler bug has been reported to SGI.
|
46 47- zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 48 it works when compiled with cc. 49
| 73 74- zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 75 it works when compiled with cc. 76
|
50- zlib doesn't work on HP-UX 9.05 with one cc compiler (the one not 51 accepting the -O option). It works with the other cc compiler.
| 77- zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works 78 with other compilers. Use "make test" to check your compiler.
|
52
| 79
|
53- To build a Windows DLL version, include in a DLL project zlib.def, zlib.rc 54 and all .c files except example.c and minigzip.c; compile with -DZLIB_DLL 55 For help on building a zlib DLL, contact Alessandro Iacopetti 56 <iaco@email.alessandria.alpcom.it> http://lisa.unial.it/iaco , 57 or contact Brad Clarke <bclarke@cyberus.ca>.
| 80- For shared memory multiprocessors, the decompression code assumes that 81 writes to pointers are atomic. Also the functions zalloc and zfree passed 82 to deflateInit must be multi-threaded in this case.
|
58
| 83
|
59- gzdopen is not supported on RISCOS
| 84- gzdopen is not supported on RISCOS, BEOS and by some Mac compilers.
|
60
| 85
|
| 86- For Turbo C the small model is supported only with reduced performance to 87 avoid any far allocation; it was tested with -DMAX_WBITS=11 -DMAX_MEM_LEVEL=3
|
61
| 88
|
| 89
|
62Acknowledgments: 63 64 The deflate format used by zlib was defined by Phil Katz. The deflate 65 and zlib specifications were written by Peter Deutsch. Thanks to all the 66 people who reported problems and suggested various improvements in zlib; 67 they are too numerous to cite here. 68 69Copyright notice: 70
| 90Acknowledgments: 91 92 The deflate format used by zlib was defined by Phil Katz. The deflate 93 and zlib specifications were written by Peter Deutsch. Thanks to all the 94 people who reported problems and suggested various improvements in zlib; 95 they are too numerous to cite here. 96 97Copyright notice: 98
|
71 (C) 1995-1996 Jean-loup Gailly and Mark Adler
| 99 (C) 1995-1998 Jean-loup Gailly and Mark Adler
|
72 73 This software is provided 'as-is', without any express or implied 74 warranty. In no event will the authors be held liable for any damages 75 arising from the use of this software. 76 77 Permission is granted to anyone to use this software for any purpose, 78 including commercial applications, and to alter it and redistribute it 79 freely, subject to the following restrictions: 80 81 1. The origin of this software must not be misrepresented; you must not 82 claim that you wrote the original software. If you use this software 83 in a product, an acknowledgment in the product documentation would be 84 appreciated but is not required. 85 2. Altered source versions must be plainly marked as such, and must not be 86 misrepresented as being the original software. 87 3. This notice may not be removed or altered from any source distribution. 88 89 Jean-loup Gailly Mark Adler
| 100 101 This software is provided 'as-is', without any express or implied 102 warranty. In no event will the authors be held liable for any damages 103 arising from the use of this software. 104 105 Permission is granted to anyone to use this software for any purpose, 106 including commercial applications, and to alter it and redistribute it 107 freely, subject to the following restrictions: 108 109 1. The origin of this software must not be misrepresented; you must not 110 claim that you wrote the original software. If you use this software 111 in a product, an acknowledgment in the product documentation would be 112 appreciated but is not required. 113 2. Altered source versions must be plainly marked as such, and must not be 114 misrepresented as being the original software. 115 3. This notice may not be removed or altered from any source distribution. 116 117 Jean-loup Gailly Mark Adler
|
90 gzip@prep.ai.mit.edu madler@alumni.caltech.edu
| 118 jloup@gzip.org madler@alumni.caltech.edu
|
91 92If you use the zlib library in a product, we would appreciate *not* 93receiving lengthy legal documents to sign. The sources are provided 94for free but without warranty of any kind. The library has been 95entirely written by Jean-loup Gailly and Mark Adler; it does not 96include third-party code. 97 98If you redistribute modified sources, we would appreciate that you include 99in the file ChangeLog history information documenting your changes.
| 119 120If you use the zlib library in a product, we would appreciate *not* 121receiving lengthy legal documents to sign. The sources are provided 122for free but without warranty of any kind. The library has been 123entirely written by Jean-loup Gailly and Mark Adler; it does not 124include third-party code. 125 126If you redistribute modified sources, we would appreciate that you include 127in the file ChangeLog history information documenting your changes.
|