ZLIBデータ圧縮ライブラリ
zlib 1.3.2は汎用データ圧縮ライブラリです。コードはすべてスレッドセーフです (ただし注意事項はFAQを参照してください)。zlibが使用するデータ形式は、 RFC(Request for Comments)1950〜1952で説明しています。 https://datatracker.ietf.org/doc/html/rfc1950がzlib形式、 rfc1951がdeflate形式、rfc1952がgzip形式です。
圧縮ライブラリの全関数はzlib.hで文書化しています。 (manページを書くボランティアを歓迎します。連絡先はzlib@gzip.orgです。) 使用例はtest/example.cにあり、ライブラリが正しく動作するかの検査も行います。 別の例はtest/minigzip.cにあります。圧縮ライブラリ自体はルートディレクトリ内の すべてのソースファイルから構成されます。
全ファイルをコンパイルしテストプログラムを実行するには、Makefile.inの冒頭の指示に 従ってください。簡単には「./configure; make test」です。成功すれば、ほとんどのUnixで 「make install」が動作するはずです。Windowsではwin32/またはcontrib/vstudio/の 専用makefileを使ってください。VMSではmake_vms.comを使ってください。
zlibへの質問は<zlib@gzip.org>へ、Windows DLL版についてはGilles Vollant <info@winimage.com>へ送ってください。ホームページはhttps://zlib.net/です。 問題を報告する前に、このサイトで最新版を使用しているか確認してください。 そうでなければ最新版を取得し、問題がまだ発生するか確認してください。
助けを求める前に、必ずzlib FAQ https://zlib.net/zlib_faq.htmlを読んでください。
Mark Nelson <markn@ieee.org>はDr. Dobb's Journalの1997年1月号にzlibの記事を 書きました。記事のコピーはhttps://zlib.net/nelson/で読めます。
版1.3.2の変更はChangeLogに記載しています。
サポート対象外の第三者による貢献はcontrib/にあります。
Javaではjava.util.zipパッケージでzlibを使用できます。 https://docs.oracle.com/search/?q=java.util.zipのAPI Documentationリンクを参照してください。
Paul Marquess <pmqs@cpan.org>が作成したzlibとbzip2のPerlインターフェイスは https://github.com/pmqs/IO-Compressにあります。
A.M. Kuchling <amk@amk.ca>が作成したzlibのPythonインターフェイスは Python 1.5以降で使用できます。https://docs.python.org/3/library/zlib.htmlを参照してください。
zlibはtclへ組み込まれています:https://wiki.tcl-lang.org/page/zlib。
Gilles Vollant <info@winimage.com>がzlibを使って作成した、.zip形式のファイルを 読み書きする実験的なパッケージは、zlibのcontrib/minizipディレクトリにあります。
一部の対象環境についての注記:
- Windows DLL版はwin32/DLL_FAQ.txtを参照してください。
- 64ビットIrixでは、deflate.cを最適化なしでコンパイルしなければなりません。 -Oではlibpngのテストが1つ失敗します。32ビットモード(コンパイラーフラグ-n32)では 成功します。コンパイラーのバグはSGIへ報告済みです。
- OSF/1 2.1上のDEC 3000/300LXではgcc 2.6.3でzlibは動作しません。 ccでコンパイルすると動作します。
- AlphaServerのDigital Unix 4.0D(旧OSF/1)では、gzprintfを正しく動かすため ccの-std1オプションが必要です。configureが設定します。
- HP-UX 9.05の一部の/bin/ccではzlibは動作しません。他のコンパイラーでは動作します。 「make test」でコンパイラーを検査してください。
- PalmOsはhttps://palmzlib.sourceforge.net/を参照してください。
謝辞:
zlibが使うdeflate形式はPhil Katzが定義しました。deflateとzlibの仕様は L. Peter Deutschが作成しました。問題を報告し、さまざまな改善を提案してくださった すべての方に感謝します。人数が多く、ここで全員を挙げることはできません。
著作権表示:
(C) 1995-2026 Jean-loup Gailly and Mark Adler
このソフトウェアは「現状のまま」で提供され、明示・黙示を問わずいかなる保証もありません。 このソフトウェアの使用によって生じるいかなる損害についても、著作者は責任を負いません。
以下の制限に従うことを条件に、商用アプリケーションを含むあらゆる目的でこのソフトウェアを 使用し、自由に改変・再配布する許可を、すべての人に与えます。
1. このソフトウェアの出所を偽ってはいけません。元のソフトウェアを自分が作成したと 主張してはいけません。製品で使用する場合、その製品の文書で謝辞を示していただければ 幸いですが、必須ではありません。 2. 改変したソース版には、改変したものであると明確に表示しなければなりません。 元のソフトウェアであるかのように偽ってはいけません。 3. ソースを配布する際、この通知を削除したり改変したりしてはいけません。
Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu
製品でzlibを使用する場合、署名を求める長い法的文書を送らないでいただければ幸いです。 ソースは無料で提供しますが、いかなる保証もありません。ライブラリはJean-loup Gaillyと Mark Adlerだけが作成し、第三者のコードを含みません。このプロジェクトへの貢献と配布は すべて個人の立場だけで行っており、第三者の知的財産についての権利を許諾するものではありません。
改変したソースを再配布する場合は、ChangeLogへ変更を記録する履歴情報を入れていただければ 幸いです。改変版ソースの配布についての詳細はFAQを読んでください。