diff options
Diffstat (limited to 'README')
-rw-r--r-- | README | 70 |
1 files changed, 27 insertions, 43 deletions
@@ -1,71 +1,55 @@ | |||
1 | zlib 1.0 is a general purpose data compression library. All the code | 1 | zlib 1.0 is a general purpose data compression library. |
2 | is reentrant (thread safe). The data format used by the zlib library | 2 | All the code is reentrant (thread safe). |
3 | is described in the files zlib-3.3.doc, deflate-1.3.doc and | 3 | |
4 | gzip-4.3.doc, available in ftp://ftp.uu.net/pub/archiving/zip/doc/ | 4 | The data format used by the zlib library is described in the |
5 | files zlib-3.2.doc, deflate-1.2.doc and gzip-4.2.doc, available | ||
6 | in ftp://ftp.uu.net/pub/archiving/zip/doc | ||
5 | 7 | ||
6 | All functions of the compression library are documented in the file | 8 | All functions of the compression library are documented in the file |
7 | zlib.h. A usage example of the library is given in the file example.c | 9 | zlib.h. A usage example of the library is given in the file example.c |
8 | which also tests that the library is working correctly. Another | 10 | which also tests that the library is working correctly. Another |
9 | example is given in the file minigzip.c. The compression library itself | 11 | example is given in the file minigzip.c. |
10 | is composed of all source files except example.c and minigzip.c. | ||
11 | 12 | ||
12 | To compile all files and run the test program, follow the instructions | 13 | To compile all files and run the test program, just type: make test |
13 | given at the top of Makefile. In short "make test; make install" | 14 | (For MSDOS, use one of the special makefiles such as Makefile.msc; |
14 | should work for most machines. For MSDOS, use one of the special | 15 | for VMS, use Make_vms.com or descrip.mms.) |
15 | makefiles such as Makefile.msc; for VMS, use Make_vms.com or descrip.mms. | 16 | To install the zlib library (libz.a) in /usr/local/lib, type: make install |
17 | To install in a different directory, use for example: | ||
18 | make install prefix=$HOME | ||
19 | This will install in $HOME/lib instead of /usr/local/lib. | ||
16 | 20 | ||
17 | Questions about zlib should be sent to <zlib@quest.jpl.nasa.gov> or, | 21 | Questions about zlib should be sent to <zlib@quest.jpl.nasa.gov>. |
18 | if this fails, to the addresses given below in the Copyright section. | ||
19 | 22 | ||
20 | The changes made in version 1.0 are documented in the file ChangeLog. | 23 | The changes made in version 1.0 are documented in the file ChangeLog. |
21 | The main changes since 0.95 are: | 24 | The main changes since 0.95 are: |
22 | - allow preset dictionary shared between compressor and decompressor | ||
23 | - allow compression level 0 (no compression) | 25 | - allow compression level 0 (no compression) |
24 | - add deflateParams in zlib.h: allow dynamic change of compression level | 26 | - add deflateParams in zlib.h: allow dynamic change of compression level |
25 | and compression strategy. | 27 | and compression strategy. |
26 | - test large buffers and deflateParams in example.c | 28 | - test large buffers and deflateParams in example.c |
27 | - add optional "configure" to build zlib as a shared library | ||
28 | - suppress Makefile.qnx, use configure instead | ||
29 | - fixes for 64-bit systems (needed for Alpha and Cray) | ||
30 | - declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2) | 29 | - declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2) |
30 | - fixes for 64-bit systems (needed for Alpha and Cray) | ||
31 | - always return Z_BUF_ERROR when deflate() has nothing to do | 31 | - always return Z_BUF_ERROR when deflate() has nothing to do |
32 | - deflateInit and inflateInit are now macros to allow version checking | 32 | - fix some very unlikely race conditions. |
33 | - prefix all global functions and types with z_ with -DZ_PREFIX | ||
34 | - fix some very unlikely race conditions in multi-threaded environment | ||
35 | - several minor fixes for better portability | 33 | - several minor fixes for better portability |
36 | - free in reverse order of allocation to help memory manager | 34 | - free in reverse order of allocation to help memory manager |
37 | - use zlib-1.0/* instead of zlib/* inside the tar.gz | ||
38 | - make zlib warning-free with "gcc -O3 -Wall -Wwrite-strings -Wpointer-arith | ||
39 | -Wconversion -Wstrict-prototypes -Wmissing-prototypes" | ||
40 | - allow gzread on concatenated .gz files | ||
41 | - deflateEnd now returns Z_DATA_ERROR if it was premature | ||
42 | - deflate is finally (?) fully deterministic | ||
43 | 35 | ||
44 | Notes for some targets: | 36 | Notes for some targets: |
45 | 37 | ||
46 | - For Turbo C the small model is supported only with reduced performance to | 38 | - For MSDOS, the small and medium models have been tested only with |
47 | avoid any far allocation; it was tested with -DMAX_WBITS=11 -DMAX_MEM_LEVEL=3 | 39 | Microsoft C. (This should work for Borland C also, but I don't have |
40 | a Borland compiler to test with.) The small model was tested with | ||
41 | Turbo C but only with reduced performance to avoid any far | ||
42 | allocation; it was tested with -DMAX_WBITS=11 -DMAX_MEM_LEVEL=3 | ||
43 | |||
44 | MS Visual C++1.5 in far model gives: | ||
45 | warning C4746: 'z_errmsg' : unsized array treated as '__far' | ||
46 | warning C4746: 'inflate_mask' : unsized array treated as '__far' | ||
47 | Ignore those warnings. | ||
48 | 48 | ||
49 | - For 64-bit Iris, deflate.c must be compiled without any optimization. | 49 | - For 64-bit Iris, deflate.c must be compiled without any optimization. |
50 | With -O, one libpng test fails. The test works in 32 bit mode (with the | 50 | With -O, one libpng test fails. The test works in 32 bit mode (with the |
51 | -32 compiler flag). | 51 | -32 compiler flag). |
52 | 52 | ||
53 | - zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 | ||
54 | it works when compiled with cc. | ||
55 | |||
56 | - zlib doesn't work on HP-UX 9.05 with one cc compiler (the one not | ||
57 | accepting the -O option). It works with the other cc compiler. | ||
58 | |||
59 | A Perl interface to zlib written by Paul Marquess <pmarquess@bfsec.bt.co.uk> | ||
60 | is in the CPAN (Comprehensive Perl Archive Network) sites, such as: | ||
61 | ftp://ftp.cis.ufl.edu/pub/perl/CPAN/modules/by-module/Compress/Compress-Zlib* | ||
62 | |||
63 | Acknowledgments: | ||
64 | |||
65 | The deflate format used by zlib was defined by Phil Katz. The deflate | ||
66 | and zlib specifications were written by Peter Deutsch. Thanks to all the | ||
67 | people who reported problems and suggested various improvements in zlib; | ||
68 | they are too numerous to cite here. | ||
69 | 53 | ||
70 | Copyright notice: | 54 | Copyright notice: |
71 | 55 | ||