1 | zstd - library files |
---|
2 | ================================ |
---|
3 | |
---|
4 | The __lib__ directory contains several files, but depending on target use case, some of them may not be necessary. |
---|
5 | |
---|
6 | #### Minimal library files |
---|
7 | |
---|
8 | To build the zstd library the following files are required: |
---|
9 | |
---|
10 | - [common/bitstream.h](common/bitstream.h) |
---|
11 | - [common/error_private.h](common/error_private.h) |
---|
12 | - [common/error_public.h](common/error_public.h) |
---|
13 | - common/fse.h |
---|
14 | - common/fse_decompress.c |
---|
15 | - common/huf.h |
---|
16 | - [common/mem.h](common/mem.h) |
---|
17 | - [common/zstd.h] |
---|
18 | - common/zstd_internal.h |
---|
19 | - compress/fse_compress.c |
---|
20 | - compress/huf_compress.c |
---|
21 | - compress/zstd_compress.c |
---|
22 | - compress/zstd_opt.h |
---|
23 | - decompress/huf_decompress.c |
---|
24 | - decompress/zstd_decompress.c |
---|
25 | |
---|
26 | Stable API is exposed in [common/zstd.h]. |
---|
27 | Advanced and experimental API can be enabled by defining `ZSTD_STATIC_LINKING_ONLY`. |
---|
28 | Never use them with a dynamic library, as their definition may change in future versions. |
---|
29 | |
---|
30 | [common/zstd.h]: common/zstd.h |
---|
31 | |
---|
32 | |
---|
33 | #### Separate compressor and decompressor |
---|
34 | |
---|
35 | To build a separate zstd compressor all files from `common/` and `compressor/` directories are required. |
---|
36 | In a similar way to build a separate zstd decompressor all files from `common/` and `decompressor/` directories are needed. |
---|
37 | |
---|
38 | |
---|
39 | #### Buffered streaming |
---|
40 | |
---|
41 | This complementary API makes streaming integration easier. |
---|
42 | It is used by `zstd` command line utility, and [7zip plugin](http://mcmilk.de/projects/7-Zip-ZStd) : |
---|
43 | |
---|
44 | - common/zbuff.h |
---|
45 | - compress/zbuff_compress.c |
---|
46 | - decompress/zbuff_decompress.c |
---|
47 | |
---|
48 | |
---|
49 | #### Dictionary builder |
---|
50 | |
---|
51 | In order to create dictionaries from some training sets, |
---|
52 | it's needed to include all files from [dictBuilder directory](dictBuilder/) |
---|
53 | |
---|
54 | |
---|
55 | #### Legacy support |
---|
56 | |
---|
57 | Zstandard can decode previous formats, starting from v0.1. |
---|
58 | Support for these format is provided in [folder legacy](legacy/). |
---|
59 | It's also required to compile the library with `ZSTD_LEGACY_SUPPORT = 1`. |
---|
60 | |
---|
61 | |
---|
62 | #### Miscellaneous |
---|
63 | |
---|
64 | The other files are not source code. There are : |
---|
65 | |
---|
66 | - LICENSE : contains the BSD license text |
---|
67 | - Makefile : script to compile or install zstd library (static or dynamic) |
---|
68 | - libzstd.pc.in : for pkg-config (make install) |
---|