怎样编译安装libzip

2017年8月2日 | 分类: 【技术】

【介绍】

zip格式是使用非常广泛的压缩文件格式。libzip 依赖于 zlib ,而zlib压缩本身主要处理gzip数据流。

官网:https://libzip.org/
官网:http://www.nih.at/libzip/index.html

参考:https://gist.github.com/mobius/1759816

Centos7下载安装PHP7时,报错:

configure: error: system libzip must be upgraded to version >= 0.11

参考:http://www.uedbox.com/centos7-ziparchive-libzip/

【rpm安装】

yum install http://rpms.remirepo.net/enterprise/7/remi/x86_64/libzip5-1.7.3-1.el7.remi.x86_64.rpm
yum install http://rpms.remirepo.net/enterprise/7/remi/x86_64/libzip5-devel-1.7.3-1.el7.remi.x86_64.rpm

实证有效。

【从源码编译安装:libzip-1.5.2】

最新的libzip需要cmake高版本进行编译。

参考:https://amon.org/cmake

下载:https://libzip.org/download/

最新版本:1.7.3

wget https://libzip.org/download/libzip-1.5.2.tar.gz && tar xvf libzip-1.5.2.tar.gz && cd libzip-1.5.2 && mkdir build && cd build && cmake .. && make && make install

报错:libgnutls.so.30: undefined reference to `p11_kit_module_get_name’

参考:http://www.atzjg.net/admin/do/view_question.php?qid=2278

当预先编译安装 gnutls 时,编译 libzip 出现这个报错,下次尝试优先编译 libzip 。

所以尝试编译安装早期版本。

【从源码编译安装:libzip-1.2.0】

参考:https://amon.org/cmake

下载:https://repology.org/project/libzip/versions

wget https://libzip.org/download/libzip-1.2.0.tar.gz && tar -zxvf libzip-1.2.0.tar.gz && cd libzip-1.2.0
./configure && make && make install

安装路径:

--with-libzip=/usr/local/lib

安装过程中报错:

fatal error: zipconf.h: No such file or directory

复制:

cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h