A massively spiffy yet delicately unobtrusive compression library. (grpc依赖)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Mark Adler ef24c4c750 Reject invalid MAX_WBITS values at compile time. 6 days ago
.github/workflows Repair github workflows for their updated macOS runner gcc name. 2 months ago
amiga zlib 1.2.3.9 13 years ago
contrib Avoid the use of a reserved macro name in contrib/minizip/ioapi.h. 2 months ago
doc Fix random typos over several source and text files. 10 months ago
examples Remove unneeded dependency on limits.h in examples/zran.c. 2 months ago
msdos Remove conversion warning from msdos/Makefile.dj2. 9 months ago
nintendods zlib 1.2.3.5 13 years ago
old Improve portability to RISC OS. 10 months ago
os400 Add deflateUsed() function to get the used bits in the last byte. 5 months ago
qnx Fix broken links. 9 months ago
test Fix test/infcover.c function prototype when ZLIB_CONST defined. 4 months ago
watcom zlib 1.2.3.9 13 years ago
win32 Add deflateUsed() function to get the used bits in the last byte. 5 months ago
.gitignore Add build folder to .gitignore. 5 months ago
CMakeLists.txt Fix cmake build directory interference issue. 10 months ago
ChangeLog Change version number on develop branch to 1.3.1.1. 10 months ago
FAQ Fix broken links. 9 months ago
INDEX Generate and install the pkg-config file with cmake. 13 years ago
LICENSE Update copyright years in LICENSE file. 10 months ago
Makefile zlib 1.2.4-pre2 13 years ago
Makefile.in Add required gzguts.h dependencies in Makefile.in. 4 months ago
README Improve portability to RISC OS. 10 months ago
adler32.c Remove K&R function definitions from zlib. 2 years ago
compress.c Remove K&R function definitions from zlib. 2 years ago
configure Add Haiku to configure for proper LDSHARED settings. 1 month ago
crc32.c Fix some spelling errors. 1 year ago
crc32.h Speed up software CRC-32 computation by a factor of 1.5 to 3. 6 years ago
deflate.c One more correction for deflateUsed() bits in stored case. 4 months ago
deflate.h Add deflateUsed() function to get the used bits in the last byte. 5 months ago
gzclose.c Remove K&R function definitions from zlib. 2 years ago
gzguts.h Reduce Windows header inclusion to speed up compilation. 9 months ago
gzlib.c Use lseek under WinCE. 9 months ago
gzread.c Keep lines short in gzread.c. 9 months ago
gzwrite.c Remove K&R function definitions from zlib. 2 years ago
infback.c Use z_const for setting msg to literal strings. 8 months ago
inffast.c Use z_const for setting msg to literal strings. 8 months ago
inffast.h Remove K&R function definitions from zlib. 2 years ago
inffixed.h Get inffixed.h and MAKEFIXED result to match. 13 years ago
inflate.c Avoid out-of-bounds pointer arithmetic in inflateCopy(). 2 months ago
inflate.h Update old comment in inflate.h. 8 months ago
inftrees.c Change version number on develop branch to 1.3.1.1. 10 months ago
inftrees.h Correct repeated words in source file comments and a readme. 1 year ago
make_vms.com Fix some typos. 2 years ago
treebuild.xml Change version number on develop branch to 1.3.1.1. 10 months ago
trees.c Add deflateUsed() function to get the used bits in the last byte. 5 months ago
trees.h zlib 1.2.4.5 13 years ago
uncompr.c Remove K&R function definitions from zlib. 2 years ago
zconf.h Avoid attempting to redefine z_const in zconf.h. 1 month ago
zconf.h.cmakein Avoid attempting to redefine z_const in zconf.h. 1 month ago
zconf.h.in Avoid attempting to redefine z_const in zconf.h. 1 month ago
zlib.3 Fix broken links. 9 months ago
zlib.3.pdf zlib 1.3.1 10 months ago
zlib.h Add deflateUsed() function to get the used bits in the last byte. 5 months ago
zlib.map Add deflateUsed() function to get the used bits in the last byte. 5 months ago
zlib.pc.cmakein Generate and install the pkg-config file with cmake. 13 years ago
zlib.pc.in zlib 1.2.4.4 13 years ago
zutil.c Remove K&R function definitions from zlib. 2 years ago
zutil.h Reject invalid MAX_WBITS values at compile time. 6 days ago

README

ZLIB DATA COMPRESSION LIBRARY

zlib 1.3.1.1 is a general purpose data compression library. All the code is
thread safe. The data format used by the zlib library is described by RFCs
(Request for Comments) 1950 to 1952 in the files
http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and
rfc1952 (gzip format).

All functions of the compression library are documented in the file zlib.h
(volunteer to write man pages welcome, contact zlib@gzip.org). A usage example
of the library is given in the file test/example.c which also tests that
the library is working correctly. Another example is given in the file
test/minigzip.c. The compression library itself is composed of all source
files in the root directory.

To compile all files and run the test program, follow the instructions given at
the top of Makefile.in. In short "./configure; make test", and if that goes
well, "make install" should work for most flavors of Unix. For Windows, use
one of the special makefiles in win32/ or contrib/vstudio/ . For VMS, use
make_vms.com.

Questions about zlib should be sent to <zlib@gzip.org>, or to Gilles Vollant
<info@winimage.com> for the Windows DLL version. The zlib home page is
http://zlib.net/ . Before reporting a problem, please check this site to
verify that you have the latest version of zlib; otherwise get the latest
version and check whether the problem still exists or not.

PLEASE read the zlib FAQ http://zlib.net/zlib_faq.html before asking for help.

Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
issue of Dr. Dobb's Journal; a copy of the article is available at
https://marknelson.us/posts/1997/01/01/zlib-engine.html .

The changes made in version 1.3.1.1 are documented in the file ChangeLog.

Unsupported third party contributions are provided in directory contrib/ .

zlib is available in Java using the java.util.zip package. Follow the API
Documentation link at: https://docs.oracle.com/search/?q=java.util.zip .

A Perl interface to zlib and bzip2 written by Paul Marquess <pmqs@cpan.org>
can be found at https://github.com/pmqs/IO-Compress .

A Python interface to zlib written by A.M. Kuchling <amk@amk.ca> is
available in Python 1.5 and later versions, see
http://docs.python.org/library/zlib.html .

zlib is built into tcl: http://wiki.tcl.tk/4610 .

An experimental package to read and write files in .zip format, written on top
of zlib by Gilles Vollant <info@winimage.com>, is available in the
contrib/minizip directory of zlib.


Notes for some targets:

- For Windows DLL versions, please see win32/DLL_FAQ.txt

- For 64-bit Irix, deflate.c must be compiled without any optimization. With
-O, one libpng test fails. The test works in 32 bit mode (with the -n32
compiler flag). The compiler bug has been reported to SGI.

- 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.

- On Digital Unix 4.0D (formerly OSF/1) on AlphaServer, the cc option -std1 is
necessary to get gzprintf working correctly. This is done by configure.

- zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works with
other compilers. Use "make test" to check your compiler.

- For PalmOs, see http://palmzlib.sourceforge.net/


Acknowledgments:

The deflate format used by zlib was defined by Phil Katz. The deflate and
zlib specifications were written by L. Peter Deutsch. Thanks to all the
people who reported problems and suggested various improvements in zlib; they
are too numerous to cite here.

Copyright notice:

(C) 1995-2024 Jean-loup Gailly and Mark Adler

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
jloup@gzip.org madler@alumni.caltech.edu

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. We make all
contributions to and distributions of this project solely in our personal
capacity, and are not conveying any rights to any intellectual property of
any third parties.

If you redistribute modified sources, we would appreciate that you include in
the file ChangeLog history information documenting your changes. Please read
the FAQ for more information on the distribution of modified source versions.