1 1.1 christos ZLIB DATA COMPRESSION LIBRARY 2 1.1 christos 3 1.1.1.4 christos zlib 1.3.1 is a general purpose data compression library. All the code is 4 1.1 christos thread safe. The data format used by the zlib library is described by RFCs 5 1.1 christos (Request for Comments) 1950 to 1952 in the files 6 1.1.1.2 christos http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and 7 1.1.1.2 christos rfc1952 (gzip format). 8 1.1 christos 9 1.1 christos All functions of the compression library are documented in the file zlib.h 10 1.1.1.2 christos (volunteer to write man pages welcome, contact zlib (a] gzip.org). A usage example 11 1.1.1.2 christos of the library is given in the file test/example.c which also tests that 12 1.1.1.2 christos the library is working correctly. Another example is given in the file 13 1.1.1.2 christos test/minigzip.c. The compression library itself is composed of all source 14 1.1.1.2 christos files in the root directory. 15 1.1 christos 16 1.1 christos To compile all files and run the test program, follow the instructions given at 17 1.1.1.2 christos the top of Makefile.in. In short "./configure; make test", and if that goes 18 1.1.1.2 christos well, "make install" should work for most flavors of Unix. For Windows, use 19 1.1.1.2 christos one of the special makefiles in win32/ or contrib/vstudio/ . For VMS, use 20 1.1.1.2 christos make_vms.com. 21 1.1 christos 22 1.1 christos Questions about zlib should be sent to <zlib (a] gzip.org>, or to Gilles Vollant 23 1.1.1.2 christos <info (a] winimage.com> for the Windows DLL version. The zlib home page is 24 1.1.1.2 christos http://zlib.net/ . Before reporting a problem, please check this site to 25 1.1.1.2 christos verify that you have the latest version of zlib; otherwise get the latest 26 1.1.1.2 christos version and check whether the problem still exists or not. 27 1.1.1.2 christos 28 1.1.1.2 christos PLEASE read the zlib FAQ http://zlib.net/zlib_faq.html before asking for help. 29 1.1.1.2 christos 30 1.1.1.2 christos Mark Nelson <markn (a] ieee.org> wrote an article about zlib for the Jan. 1997 31 1.1.1.2 christos issue of Dr. Dobb's Journal; a copy of the article is available at 32 1.1.1.4 christos https://marknelson.us/posts/1997/01/01/zlib-engine.html . 33 1.1.1.2 christos 34 1.1.1.4 christos The changes made in version 1.3.1 are documented in the file ChangeLog. 35 1.1.1.2 christos 36 1.1.1.2 christos Unsupported third party contributions are provided in directory contrib/ . 37 1.1.1.2 christos 38 1.1.1.4 christos zlib is available in Java using the java.util.zip package. Follow the API 39 1.1.1.4 christos Documentation link at: https://docs.oracle.com/search/?q=java.util.zip . 40 1.1.1.2 christos 41 1.1.1.4 christos A Perl interface to zlib and bzip2 written by Paul Marquess <pmqs (a] cpan.org> 42 1.1.1.4 christos can be found at https://github.com/pmqs/IO-Compress . 43 1.1 christos 44 1.1 christos A Python interface to zlib written by A.M. Kuchling <amk (a] amk.ca> is 45 1.1 christos available in Python 1.5 and later versions, see 46 1.1.1.2 christos http://docs.python.org/library/zlib.html . 47 1.1 christos 48 1.1.1.2 christos zlib is built into tcl: http://wiki.tcl.tk/4610 . 49 1.1 christos 50 1.1 christos An experimental package to read and write files in .zip format, written on top 51 1.1 christos of zlib by Gilles Vollant <info (a] winimage.com>, is available in the 52 1.1 christos contrib/minizip directory of zlib. 53 1.1 christos 54 1.1 christos 55 1.1 christos Notes for some targets: 56 1.1 christos 57 1.1 christos - For Windows DLL versions, please see win32/DLL_FAQ.txt 58 1.1 christos 59 1.1 christos - For 64-bit Irix, deflate.c must be compiled without any optimization. With 60 1.1 christos -O, one libpng test fails. The test works in 32 bit mode (with the -n32 61 1.1 christos compiler flag). The compiler bug has been reported to SGI. 62 1.1 christos 63 1.1 christos - zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 it works 64 1.1 christos when compiled with cc. 65 1.1 christos 66 1.1.1.4 christos - On Digital Unix 4.0D (formerly OSF/1) on AlphaServer, the cc option -std1 is 67 1.1 christos necessary to get gzprintf working correctly. This is done by configure. 68 1.1 christos 69 1.1 christos - zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works with 70 1.1 christos other compilers. Use "make test" to check your compiler. 71 1.1 christos 72 1.1.1.2 christos - gzdopen is not supported on RISCOS or BEOS. 73 1.1 christos 74 1.1 christos - For PalmOs, see http://palmzlib.sourceforge.net/ 75 1.1 christos 76 1.1 christos 77 1.1 christos Acknowledgments: 78 1.1 christos 79 1.1.1.2 christos The deflate format used by zlib was defined by Phil Katz. The deflate and 80 1.1.1.2 christos zlib specifications were written by L. Peter Deutsch. Thanks to all the 81 1.1.1.2 christos people who reported problems and suggested various improvements in zlib; they 82 1.1.1.2 christos are too numerous to cite here. 83 1.1 christos 84 1.1 christos Copyright notice: 85 1.1 christos 86 1.1.1.4 christos (C) 1995-2024 Jean-loup Gailly and Mark Adler 87 1.1 christos 88 1.1 christos This software is provided 'as-is', without any express or implied 89 1.1 christos warranty. In no event will the authors be held liable for any damages 90 1.1 christos arising from the use of this software. 91 1.1 christos 92 1.1 christos Permission is granted to anyone to use this software for any purpose, 93 1.1 christos including commercial applications, and to alter it and redistribute it 94 1.1 christos freely, subject to the following restrictions: 95 1.1 christos 96 1.1 christos 1. The origin of this software must not be misrepresented; you must not 97 1.1 christos claim that you wrote the original software. If you use this software 98 1.1 christos in a product, an acknowledgment in the product documentation would be 99 1.1 christos appreciated but is not required. 100 1.1 christos 2. Altered source versions must be plainly marked as such, and must not be 101 1.1 christos misrepresented as being the original software. 102 1.1 christos 3. This notice may not be removed or altered from any source distribution. 103 1.1 christos 104 1.1 christos Jean-loup Gailly Mark Adler 105 1.1 christos jloup (a] gzip.org madler (a] alumni.caltech.edu 106 1.1 christos 107 1.1.1.2 christos If you use the zlib library in a product, we would appreciate *not* receiving 108 1.1.1.2 christos lengthy legal documents to sign. The sources are provided for free but without 109 1.1.1.2 christos warranty of any kind. The library has been entirely written by Jean-loup 110 1.1.1.3 christos Gailly and Mark Adler; it does not include third-party code. We make all 111 1.1.1.3 christos contributions to and distributions of this project solely in our personal 112 1.1.1.3 christos capacity, and are not conveying any rights to any intellectual property of 113 1.1.1.3 christos any third parties. 114 1.1.1.2 christos 115 1.1.1.2 christos If you redistribute modified sources, we would appreciate that you include in 116 1.1.1.2 christos the file ChangeLog history information documenting your changes. Please read 117 1.1.1.2 christos the FAQ for more information on the distribution of modified source versions. 118