
مكتبة ضغط بيانات متعددة الأغراض تنفّذ صيغ zlib وdeflate وgzip مع دوال آمنة للخيوط ودعم للبناء عبر المنصات المختلفة.
مكتبة ضغط البيانات ZLIB
zlib 1.2.7 هي مكتبة ضغط بيانات للأغراض العامة. جميع الكود آمن للخيوط (thread safe). تنسيق البيانات المستخدم من قبل مكتبة zlib موصوف في طلبات التعليقات (RFCs) 1950 إلى 1952 في الملفات http://tools.ietf.org/html/rfc1950 (تنسيق zlib)، rfc1951 (تنسيق deflate) و rfc1952 (تنسيق gzip).
جميع وظائف مكتبة الضغط موثقة في الملف zlib.h (نرحب بالمتطوعين لكتابة صفحات الدليل، اتصل على [email protected]). مثال على استخدام المكتبة موجود في الملف test/example.c والذي يختبر أيضًا أن المكتبة تعمل بشكل صحيح. مثال آخر موجود في الملف test/minigzip.c. مكتبة الضغط نفسها تتكون من جميع ملفات المصدر في الدليل الجذر.
لتجميع جميع الملفات وتشغيل برنامج الاختبار، اتبع التعليمات الواردة في أعلى ملف Makefile.in. باختصار "./configure; make test"، وإذا سارت الأمور بشكل جيد، فإن "make install" يجب أن يعمل مع معظم إصدارات Unix. بالنسبة لـ Windows، استخدم أحد ملفات make الخاصة في win32/ أو contrib/vstudio/. بالنسبة لـ VMS، استخدم make_vms.com.
يجب إرسال الأسئلة حول zlib إلى [email protected]، أو إلى Gilles Vollant [email protected] بخصوص إصدار Windows DLL. الصفحة الرئيسية لـ zlib هي http://zlib.net/. قبل الإبلاغ عن مشكلة، يرجى التحقق من هذا الموقع للتأكد من أن لديك أحدث إصدار من zlib؛ وإلا احصل على أحدث إصدار وتحقق مما إذا كانت المشكلة لا تزال موجودة أم لا.
يرجى قراءة الأسئلة الشائعة لـ zlib http://zlib.net/zlib_faq.html قبل طلب المساعدة.
كتب مارك نيلسون [email protected] مقالاً عن zlib لعدد يناير 1997 من مجلة Dr. Dobb's Journal؛ نسخة من المقال متاحة على http://marknelson.us/1997/01/01/zlib-engine/.
التغييرات التي تم إجراؤها في الإصدار 1.2.7 موثقة في ملف ChangeLog.
المساهمات غير المدعومة من طرف ثالث متوفرة في الدليل contrib/.
zlib متاح في Java باستخدام الحزمة java.util.zip، موثقة على http://java.sun.com/developer/technicalArticles/Programming/compression/.
واجهة Perl لـ zlib كتبها Paul Marquess [email protected] متوفرة في مواقع CPAN (شبكة أرشيف Perl الشاملة)، بما في ذلك .
واجهة Python لـ zlib كتبها A.M. Kuchling [email protected] متوفرة في Python 1.5 والإصدارات الأحدث، انظر http://docs.python.org/library/zlib.html.
zlib مدمج في tcl: http://wiki.tcl.tk/4610.
حزمة تجريبية لقراءة وكتابة الملفات بتنسيق .zip، كتبت فوق zlib بواسطة Gilles Vollant [email protected]، متوفرة في الدليل contrib/minizip الخاص بـ zlib.
ملاحظات لبعض الأهداف:
لإصدارات Windows DLL، يرجى الاطلاع على win32/DLL_FAQ.txt
بالنسبة لـ 64-bit Irix، يجب تجميع deflate.c دون أي تحسين. مع -O، يفشل أحد اختبارات libpng. الاختبار يعمل في وضع 32 بت (مع علامة المترجم -n32). تم الإبلاغ عن خطأ المترجم إلى SGI.
zlib لا يعمل مع gcc 2.6.3 على DEC 3000/300LX تحت OSF/1 2.1 لكنه يعمل عند التجميع باستخدام cc.
على Digital Unix 4.0D (المعروف سابقًا باسم OSF/1) على AlphaServer، خيار cc -std1 ضروري لجعل gzprintf يعمل بشكل صحيح. يتم ذلك بواسطة configure.
zlib لا يعمل على HP-UX 9.05 مع بعض إصدارات /bin/cc. يعمل مع مترجمات أخرى. استخدم "make test" للتحقق من المترجم الخاص بك.
gzdopen غير مدعوم على RISCOS أو BEOS.
بالنسبة لـ PalmOs، انظر http://palmzlib.sourceforge.net/
شكر وتقدير:
تم تعريف تنسيق deflate المستخدم بواسطة zlib بواسطة Phil Katz. تم كتابة مواصفات deflate و zlib بواسطة L. Peter Deutsch. شكرًا لجميع الأشخاص الذين أبلغوا عن المشاكل واقترحوا تحسينات متنوعة في zlib؛ هم أكثر من أن يُذكروا هنا.
إشعار حقوق النشر:
(C) 1995-2012 Jean-loup Gailly and Mark Adler
يتم توفير هذا البرنامج 'كما هو'، دون أي ضمان صريح أو ضمني. في أي حال من الأحوال لن يكون المؤلفون مسؤولين عن أي أضرار ناتجة عن استخدام هذا البرنامج.
يُسمح لأي شخص باستخدام هذا البرنامج لأي غرض، بما في ذلك التطبيقات التجارية، وتعديله وإعادة توزيعه بحرية، مع مراعاة القيود التالية:
Jean-loup Gailly Mark Adler [email protected] [email protected]
إذا استخدمت مكتبة zlib في منتج، فإننا نقدر عدم استلام وثائق قانونية طويلة للتوقيع. يتم توفير المصادر مجانًا ولكن بدون أي ضمان من أي نوع. تمت كتابة المكتبة بالكامل بواسطة Jean-loup Gailly و Mark Adler؛ ولا تتضمن كودًا من طرف ثالث.
إذا قمت بإعادة توزيع مصادر معدلة، فإننا نقدر أن تقوم بتضمين معلومات تاريخية في ملف ChangeLog توثق تغييراتك. يرجى قراءة الأسئلة الشائعة لمزيد من المعلومات حول توزيع إصدارات المصدر المعدلة.