README 5.7 KB
Newer Older
M
Mark Adler 已提交
1
zlib 1.0.7 is a general purpose data compression library.  All the code
M
Mark Adler 已提交
2
is reentrant (thread safe).  The data format used by the zlib library
M
Mark Adler 已提交
3 4 5 6
is described by RFCs (Request for Comments) 1950 to 1952 in the files 
ftp://ds.internic.net/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate
format) and rfc1952.txt (gzip format). These documents are also available in
other formats from ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html
M
Mark Adler 已提交
7 8 9

All functions of the compression library are documented in the file
zlib.h. A usage example of the library is given in the file example.c
M
Mark Adler 已提交
10
which also tests that the library is working correctly. Another
M
Mark Adler 已提交
11 12
example is given in the file minigzip.c. The compression library itself
is composed of all source files except example.c and minigzip.c.
M
Mark Adler 已提交
13

M
Mark Adler 已提交
14 15 16 17 18 19 20
To compile all files and run the test program, follow the instructions
given at the top of Makefile. In short "make test; make install"
should work for most machines.  For MSDOS, use one of the special
makefiles such as Makefile.msc; for VMS, use Make_vms.com or descrip.mms.

Questions about zlib should be sent to <zlib@quest.jpl.nasa.gov> or,
if this fails, to the addresses given below in the Copyright section.
M
Mark Adler 已提交
21
The zlib home page is http://www.cdrom.com/pub/infozip/zlib/
M
Mark Adler 已提交
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
The official zlib ftp site is ftp://ftp.cdrom.com/pub/infozip/zlib/
Mark Nelson wrote an article about zlib for the Jan. 1997 issue of 
Dr. Dobb's Journal; a copy of the article is available in
http://web2.airmail.net/markn/articles/zlibtool/zlibtool.htm

The changes made in version 1.0.7 are documented in the file ChangeLog.
The main changes since 1.0.6 are:

- fix gzseek which was broken in write mode
- return error for gzseek to negative absolute position
- fix configure for Linux (Chun-Chung Chen)
- increase stack space for MSC (Tim Wegner)
- get_crc_table and inflateSyncPoint are EXPORTed (Gilles Vollant)
- define EXPORTVA for gzprintf (Gilles Vollant)
- added mini man page zlib.3 (Rick Rodgers) [volunteers to write full
  man pages from zlib.h most welcome. write to jloup@gzip.org]
- for contrib/untgz, fix makedir() and improve Makefile

Unsupported third party contributions are provided in directory "contrib".

A Java implementation of zlib is available in the Java Development Kit 1.1
http://www.javasoft.com/products/JDK/1.1/docs/api/Package-java.util.zip.html
See the zlib home page http://www.cdrom.com/pub/infozip/zlib/ for details.
M
Mark Adler 已提交
45 46 47 48 49

A Perl interface to zlib written by Paul Marquess <pmarquess@bfsec.bt.co.uk>
is in the CPAN (Comprehensive Perl Archive Network) sites, such as:
ftp://ftp.cis.ufl.edu/pub/perl/CPAN/modules/by-module/Compress/Compress-Zlib*

M
Mark Adler 已提交
50 51 52
A Python interface to zlib written by A.M. Kuchling <amk@magnet.com>
is available from the Python Software Association sites, such as:
ftp://ftp.python.org/pub/python/contrib/Encoding/zlib*.tar.gz
M
Mark Adler 已提交
53 54

Notes for some targets:
M
Mark Adler 已提交
55

M
Mark Adler 已提交
56 57 58 59 60
- To build a Windows DLL version, include in a DLL project zlib.def, zlib.rc
  and all .c files except example.c and minigzip.c; compile with -DZLIB_DLL
  The zlib DLL support was initially done by Alessandro Iacopetti and is
  now maintained by Gilles Vollant <info@winimage.com>. Check the zlib DLL
  home page at http://www.winimage.com/zLibDll
M
Mark Adler 已提交
61

M
Mark Adler 已提交
62 63 64 65 66 67
  From Visual Basic, you can call the DLL functions which do not take
  a structure as argument: compress, uncompress and all gz* functions.
  See contrib/visual-basic.txt for more information.
  I don't know how to handle structures in Visual Basic, sorry.

- For 64-bit Irix, deflate.c must be compiled without any optimization.
M
Mark Adler 已提交
68
  With -O, one libpng test fails. The test works in 32 bit mode (with
M
Mark Adler 已提交
69
  the -n32 compiler flag). The compiler bug has been reported to SGI.
M
Mark Adler 已提交
70 71 72 73 74 75 76

- zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1   
  it works when compiled with cc.

- zlib doesn't work on HP-UX 9.05 with one cc compiler (the one not
  accepting the -O option). It works with the other cc compiler.

M
Mark Adler 已提交
77
- gzdopen is not supported on RISCOS
M
Mark Adler 已提交
78

M
Mark Adler 已提交
79 80 81
- For Turbo C the small model is supported only with reduced performance to
  avoid any far allocation; it was tested with -DMAX_WBITS=11 -DMAX_MEM_LEVEL=3

M
Mark Adler 已提交
82 83

Acknowledgments:
M
Mark Adler 已提交
84

M
Mark Adler 已提交
85 86 87 88
  The deflate format used by zlib was defined by Phil Katz. The deflate
  and zlib specifications were written by Peter Deutsch. Thanks to all the
  people who reported problems and suggested various improvements in zlib;
  they are too numerous to cite here.
M
Mark Adler 已提交
89 90 91

Copyright notice:

M
Mark Adler 已提交
92
 (C) 1995-1998 Jean-loup Gailly and Mark Adler
M
Mark Adler 已提交
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110

  This software is provided 'as-is', without any express or implied
  warranty.  In no event will the authors be held liable for any damages
  arising from the use of this software.

  Permission is granted to anyone to use this software for any purpose,
  including commercial applications, and to alter it and redistribute it
  freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not
     claim that you wrote the original software. If you use this software
     in a product, an acknowledgment in the product documentation would be
     appreciated but is not required.
  2. Altered source versions must be plainly marked as such, and must not be
     misrepresented as being the original software.
  3. This notice may not be removed or altered from any source distribution.

  Jean-loup Gailly        Mark Adler
M
Mark Adler 已提交
111
  jloup@gzip.org          madler@alumni.caltech.edu
M
Mark Adler 已提交
112 113 114 115 116 117 118 119 120

If you use the zlib library in a product, we would appreciate *not*
receiving lengthy legal documents to sign. The sources are provided
for free but without warranty of any kind.  The library has been
entirely written by Jean-loup Gailly and Mark Adler; it does not
include third-party code.

If you redistribute modified sources, we would appreciate that you include
in the file ChangeLog history information documenting your changes.