[Zlib-devel] zlib 1.2.4 released!

William A. Rowe Jr. wrowe at rowe-clan.net
Mon Mar 15 01:00:57 EDT 2010


On 3/14/2010 11:08 PM, Mark Adler wrote:
> 
> Thanks.
> 
> What are the .pdb files?  The previous zlib DLL doesn't seem to have those.  Also what are the _d and no _d versions of the executables?

The .pdb are symbol files.  Foo.exe + Foo.pdb is the same as an un-stripped
unix binary, suitable for debugging (windbg is one straightforward free win32
debugger).  As in unix, it's possible to do a postmortem of a user.dmp (core
file) based on symbol files of the binaries implicated in the crash.

There are two binaries, foo.exe and foo_d.exe which are linked to the static
and dynamic flavors of zlib.lib and zdll.lib, respectively.  That also happens
to explain the difference in their file sizes.

There is no purpose in shipping a .def file.  (The .exp file is of dubious value,
as well, but convention suggests shipping it.)

I did not pack .txt files or order this by include/lib/bin since the prior
package violated the bin/ convention, and there is no such organization
suggested by win32/makefile.msc.

But as I suggested, reorganize this as you will :)  The usual convention is
to keep the .pdb file in the same tree as the corresponding .exe/.dll, or
to ship the conventions in a seperate package altogether, as we do for the
win32 Apache httpd package.

> Below is a list of the contents of zlib123-dll.zip.  I think most of what was in the old one is in what you provided, except for zlib.def.
> 
> Mark
> 
> 
> Archive:  zlib123-dll.zip
>   Length     Date   Time    Name
>  --------    ----   ----    ----
>     18325  10-11-04 04:15   DLL_FAQ.txt
>         0  07-19-05 06:00   include/
>      9876  05-28-05 08:40   include/zconf.h
>     67545  07-18-05 04:26   include/zlib.h
>         0  07-19-05 06:00   lib/
>      6109  07-18-05 17:25   lib/zdll.exp
>     10590  07-18-05 17:25   lib/zdll.lib
>       981  11-08-03 21:47   lib/zlib.def
>      1528  07-19-05 06:00   README.txt
>         0  07-19-05 06:00   test/
>      8704  07-18-05 17:37   test/example_d.exe
>      4608  07-18-05 17:37   test/minigzip_d.exe
>      5120  07-18-05 17:37   test/testzlib_d.exe
>      7168  07-18-05 17:37   test/untgz_d.exe
>      3114  10-05-04 02:00   USAGE.txt
>     59904  07-20-05 11:48   zlib1.dll
>  --------                   -------
>    203572                   16 files
> 
> 
> Contents of USAGE.txt:
> 
> 
> Installing ZLIB1.DLL
> ====================
>   Copy ZLIB1.DLL to the SYSTEM or the SYSTEM32 directory.
> 
> 
> Using ZLIB1.DLL with Microsoft Visual C++
> =========================================
>    1. Install the supplied header files "zlib.h" and "zconf.h"
>       into a directory found in the INCLUDE path list.
> 
>    2. Install the supplied library files "zdll.exp" and "zdll.lib"
>       into a directory found in the LIB path list.
> 
>    3. Add "zdll.exp" or "zdll.lib" to your project.
> 
>    Notes:
>    - Usually, you don't need both the .exp file and the .lib file.
>    - If you wish, you may rename "zdll.exp" to "zlib1.exp", and/or
>      rename "zdll.lib" to "zlib1.lib".
> 
> 
> Using ZLIB1.DLL with Borland C++
> ================================
>    1. Install the supplied header files "zlib.h" and "zconf.h"
>       into a directory found in the INCLUDE path list.
> 
>    2. Build the import library using the IMPLIB tool:
>         implib -a -c -f lib\zdllbor.lib zlib1.dll
> 
>       OR
> 
>    2' Convert the supplied library file "zdll.lib" to OMF format,
>       using the COFF2OMF tool:
>         coff2omf lib\zdll.lib lib\zdllbor.lib
> 
>    3. Install "zdllbor.lib" into a directory found in the LIB path
>       list.
> 
>    4. Add "zdllbor.lib" to your project.
> 
>   Notes:
>   - The modules that are linked with "zdllbor.lib" must be compiled
>     using a 4-byte alignment (option -a):
>         bcc32 -a -c myprog.c
>         bcc32 myprog.obj zdllbor.lib
>   - If you wish, you may use "zlib1.lib" instead of "zdllbor.lib".
> 
> 
> Using ZLIB1.DLL with gcc/MinGW
> ==============================
>    1. Install the supplied header files "zlib.h" and "zconf.h"
>       into the INCLUDE directory.
> 
>    2. Build the import library from the supplied "zlib.def":
>         dlltool -D zlib1.dll -d lib/zlib.def -l lib/libzdll.a
> 
>       OR
> 
>    2' Copy the supplied library file "zdll.lib" to "libzdll.a":
>         cp lib/zdll.lib lib/libzdll.a
> 
>    3. Install "libzdll.a" into the LIB directory.
> 
>    4. Add "libzdll.a" to your project, or use the -lzdll option.
> 
> 
> Using ZLIB1.DLL with gcc/Cygwin
> ===============================
>   ZLIB1.DLL is not designed to work with Cygwin.  The Cygwin
>   system has its own DLL build of zlib, named CYGZ.DLL.
> 
> 
> Rebuilding ZLIB1.DLL
> ====================
>   Depending on your build environment, use the appropriate
>   makefile from the win32/ directory, found in the zlib source
>   distribution.
> 
>   Your custom build has to comply with the requirements stated
>   in DLL_FAQ.txt, including (but not limited to) the following:
>     - It must be built from an unaltered zlib source distribution.
>     - It must be linked to MSVCRT.DLL.
>     - The macros that compile out certain portions of the zlib
>       code (such as NO_GZCOMPRESS, NO_GZIP) must not be enabled.
>     - The ZLIB_WINAPI macro must not be enabled.
> 
>   Furthermore, it has to run successfully with the test suite
>   found in this package.
> 
>   It is recommended, however, to use the supplied ZLIB1.DLL,
>   instead of rebuilding it yourself.  You should rebuild it
>   only if you have a special reason.
> 
> 
> 
> _______________________________________________
> Zlib-devel mailing list
> Zlib-devel at madler.net
> http://mail.madler.net/mailman/listinfo/zlib-devel_madler.net
> 





More information about the Zlib-devel mailing list