zlib 适用于数据压缩的函式库,由Jean-loup Gailly (负责compression)和 Mark Adler (负责decompression)开发。
zlib被设计成一个免费的、通用的、法律上不受阻碍(即没有被任何专利覆盖) 的无损数据压缩库。zlib几乎适用于任何计算器硬件和操作系统。
首先, 下载最新的 zlib 源码包,使用下面命令下载编译和安装 zlib包:http://zlib.net/zlib-1.2.11.tar.gzzlib本身的数据格式可以进行跨平台的移植。 与在Unix上适用的LZW压缩方法 以及 GIF 图像压缩不同, zlib中适用的压缩方法从不对数据进行拓展。(LZW在极端情况下会导致文件大小变为原来的两倍、甚至三倍)。zlib的内存占用也是独立于输入数据的,并且在必要的情况下可以适当减少部分内存占用。
cd /usr/local/src wget http://zlib.net/zlib-1.2.11.tar.gz tar -zxvf zlib-1.2.11.tar.gz
进入zlib目录,执行以下命令安装zlib
cd zlib-1.2.11 ./configure make make install
在make install这一步,由于要把zlib安装到/usr/local/lib 路径下,所以可能需要root 权限。
安装成功后,可以在/usr/local/lib下找到 libz.a。
libz.a是一个静态库,为了使用zlib的接口,我们必须在连接我们的程序时,libz.a链接进来。
只需在 链接命令后加-lz /usr/llocal/lib/libz.a 即可。
举个例子, 我们有一个使用zlib库的应用程序, 源文件只有一个:zpipe.c, 里面调用了zlib的接口,这时执行以下命令编译既可:
gcc -o zpipe.o -c zpipe.c gcc -o zpipe zpipe.o -lz /usr/local/lib/libz.a