宝塔安装PHP扩展 ZipArchive
php8.1 版本
php8.1 不支持ZipArchive导致程序无法后台直接更新的解决方法
在SSH命令行界面执行以下语句:
cd /www/server/php/81/src/ext/zip/
/www/server/php/81/bin/phpize
./configure --with-php-config=/www/server/php/81/bin/php-config
make && make install
echo "extension = zip.so" >> /www/server/php/81/etc/php.ini
libzip 版本错误
如果中途执行 ./configure --with-php-config=/www/server/php/81/bin/php-config 遇到以下错误:
configure: error: Package requirements (libzip >= 0.11 libzip ≠ 1.3.1 libzip ≠ 1.7.0) were not met
根据字面意思,是libzip包有问题,且libzip应该大于0.11版本且不等于1.3.1或者1.7.0
什么是libzip?
Qt使用一些压缩解压功能,选择libzip库,libzip库比较原始,也是很多其他库的基础支撑库
解决方法
卸载自带的libzip
yum remove libzip -y
获取libzip包
wget https://libzip.org/download/libzip-1.3.2.tar.gz
解压安装
tar zxf libzip-1.3.2.tar.gz cd libzip-1.3.2/ ./configure && make && make install
查看libzip位置
[root@VM-8-9-centos]# whereis libzip libzip: /usr/local/lib/libzip.la /usr/local/lib/libzip.a /usr/local/lib/libzip.so
配置libzip库,使configure可以找到它
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/"
继续尝试执行PHP编译
# 回到安装php扩展的目录 cd /www/server/php/81/src/ext/zip/ # 重新执行 ./configure 命令 ./configure --with-php-config=/www/server/php/81/bin/php-config
最后在软件商店重启一下 PHP 服务即可。
注:从libzip1.4.0版本以上需要cmake编译安装,而且对cmake也有版本依赖,大部分情况需要先安装对应版本cmake,无特殊需求,1.3.2即可。