tree: db3ab3a3bdadc1ed5898e395aac7a49bf38843ad [path history] [tgz]
  1. common/
  2. compress/
  3. decompress/
  4. dictBuilder/
  5. legacy/
  6. .gitignore
  7. libzstd.pc.in
  8. LICENSE
  9. Makefile
  10. README.md
lib/README.md

zstd - library files

The lib directory contains several files, but depending on target use case, some of them may not be necessary.

Minimal library files

To build the zstd library the following files are required:

Stable API is exposed in common/zstd.h. Advanced and experimental API can be enabled by defining ZSTD_STATIC_LINKING_ONLY. Never use them with a dynamic library, as their definition may change in future versions.

Separate compressor and decompressor

To build a separate zstd compressor all files from common/ and compressor/ directories are required. In a similar way to build a separate zstd decompressor all files from common/ and decompressor/ directories are needed.

Buffered streaming

This complementary API makes streaming integration easier. It is used by zstd command line utility, and 7zip plugin :

  • common/zbuff.h
  • compress/zbuff_compress.c
  • decompress/zbuff_decompress.c

Dictionary builder

In order to create dictionaries from some training sets, it's needed to include all files from dictBuilder directory

Legacy support

Zstandard can decode previous formats, starting from v0.1. Support for these format is provided in folder legacy. It's also required to compile the library with ZSTD_LEGACY_SUPPORT = 1.

Miscellaneous

The other files are not source code. There are :

  • LICENSE : contains the BSD license text
  • Makefile : script to compile or install zstd library (static or dynamic)
  • libzstd.pc.in : for pkg-config (make install)