$customHeader
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

zlib is a common compression library that OpenSAML relies on for deflate/inflate support.

Project website: http://zlib.org/

zlib is provided with most Linux and Unix operating systems.

Non-Windows

If you're building from source on a non-Windows platform, a default build is generally fine.

Windows

On Windows, zlib is pretty much a mess. The only modern project files are for building a DLL that uses the WINAPI calling convention for Visual Basic applications, and the default Makefile doesn't handle debug builds, or create properly versioned DLL and import library names. Short of a total rewrite, I built this by manually adjusting the makefile with different settings, running a build, and then copying the output files into separate directories.

First I do the 32-bit Release build:

  • Edit win32/Makefile.msc and change IMPLIB to zlib1.lib
  • nmake /f win32\Makefile.msc
  • mkdir Release
  • copy zlib1.* Release
  • nmake /f win32\Makefile.msc clean

Now, the 64-bit Release build, switching to the x64 Tools command prompt:

  • mkdir x64
  • mkdir x64\Release
  • nmake /f win32\Makefile.msc
  • copy zlib1.* x64\Release
  • nmake /f win32\Makefile.msc clean

Now the 32-bit Debug build, switching to the 32-bit Tools command prompt:

  • Edit win32/Makefile.msc and change IMPLIB to zlib1D.lib and SHAREDLIB to zlib1D.dll
  • Change CFLAGS and turn /MD into /MDd, and add -D_DEBUG to WFLAGS
  • nmake win32/Makefile.msc
  • mkdir Debug
  • copy zlib1D.* Debug
  • nmake /f win32\Makefile.msc clean

Now, the 64-bit Debug build, switching back to the x64 Tools command prompt:

  • mkdir x64\Debug
  • nmake /f win32\Makefile.msc
  • copy zlib1D.* x64\Debug
  • nmake /f win32\Makefile.msc clean
  • No labels