libzip报错configure: error: Package requirements (libzip >= 0.11 libzip != 1.3.1 libzip != 1.7.0) were not met

原文章https://blog.csdn.net/ljh101/article/details/108531725 (备份,方便日后查看) php7.4编译参数的时候出现的问题

翻译过来的意思就是 libzip的版本必须大于0.11 且 不能等于1.3.1或者1.7.0

官网下载地址

https://libzip.org/download/libzip-1.3.2.tar.gz

卸载自身的libzip

yum remove libzip

下载

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

查看libzip在那个路径

whereis libzip

现在需要告诉. ./configure 程序,你新安装的libzip在哪里,方法有两个 1、编辑 /etc/ld.so.conf这个文件,最后面添加以下内容

/usr/local/lib

接着执行下面的命令立即生效

ldconfig -f

2、执行下面一条命令即可

export PKG_CONFIG_PATH=”/usr/local/lib/pkgconfig/“

从libzip1.4.0版本以上需要cmake编译安装(非必须情况下,不推荐,可以忽略)

yum -y install cmake(安装的是2.8的,编译libzip需要cmake3版本)

网上很多都是编译安装cmake3,这里我给大家弄到一个简单的方法

先卸载干净自带的camke

yum remove camke

直接yum下载camke3以及所需的依赖

yum -y install cmake3 openssl openssl-devel gnutls gnutls-devel mbedtls mbedtls-devel bzip2 bzip2-devel

然后创建cmkae的软连接(设置环境变量也可以)

ln -s /usr/bin/cmake3 /usr/bin/cmake

到20201019为止最新的是libzip1.7.3,注意需要翻墙才能下载注意,这个步骤一步一步来,才能看清楚报错情况

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

执行cmake .. 指令的时候会出现这个提示:Could NOT find Nettle: Found unsuitable version “2.7.1”, but required is at least “3.0”,这里提示这个库的版本太低了,需要下载后手动编译升级一下然后继续执行往下的步骤

卸载原本旧版nettle

yum remove nettle

下载nettle3.6以下是官方链接

wget https://ftp.gnu.org/gnu/nettle/nettle-3.6.tar.gz cd nettle-3.6

必须指定路径否则cmake..还是会提示找不到nettle

./configure –prefix=/usr/ && make && make install

然后发现报这个,但是后面php可以编译通过了,不会报错,有知道这个是怎么回事的麻烦告知一下,这个是本来就是这样的呢?还是我那个步骤没搞对呢?

接下来就和libzip1.3的一样了,需要告诉 ./configure程序,你新安装的libzip在哪里了 ,其实上面的输出信息,往上拉就可以看到,但是也可以通过下面的命令可以这样查看安装路径

find /usr -name ‘libzip 把新的路径执行一遍,再次回去安装php7.4就没问题了

export PKG_CONFIG_PATH=”/usr/lib64/pkgconfig/“

参考连接(非常感谢):

https://blog.csdn.net/alwaysbefine/article/details/107367435?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

https://blog.csdn.net/counsellor/article/details/104430429