libzip uses cmake to build.
For running the tests, you need to have perl.
You'll need zlib (at least version 1.1.2). It comes with most operating systems.
For supporting bzip2-compressed zip archives, you need bzip2.
For AES (encryption) support, you need one of these cryptographic libraries, listed in order of preference:
- Apple's CommonCrypto (available on macOS and iOS)
- GnuTLS
- mbed TLS
- OpenSSL >= 1.0.
- Microsoft Windows Cryptography Framework
If you don't want a library even if it is installed, you can
pass -DENABLE_<LIBRARY>=OFF
to cmake, where <LIBRARY>
is one of
COMMONCRYPTO
, GNUTLS
, MBEDTLS
, or OPENSSL
.
The basic usage is
mkdir build
cd build
cmake ..
make
make test
make install
Some useful parameters you can pass to cmake
with -Dparameter=value
:
BUILD_SHARED_LIBS
: set toON
orOFF
to enable/disable building of shared libraries, defaults toON
CMAKE_INSTALL_PREFIX
: for setting the installation pathDOCUMENTATION_FORMAT
: choose one of 'man', 'mdoc', and 'html' for the installed documentation (default: decided by cmake depending on available tools)
If you want to compile with custom CFLAGS
, set them in the environment
before running cmake
:
CFLAGS=-DMY_CUSTOM_FLAG cmake ..
If you are compiling on a system with a small stack size, add
-DZIP_ALLOCATE_BUFFER
to CFLAGS
.
You can get verbose build output with by passing VERBOSE=1
to
make
.
You can also check the cmake FAQ.