php7.3安装zip.so扩展

在新项目中使用了php7.3的版本(编译安装),一直提示php_zip未开启,网上搜索了一些资料,并且处理了一些安装过程中遇到的问题。下面给大家解释分享下

安装流程:

# 进入zip拓展目录
cd /www/server/php/73/src/ext/zip

# 运行phpize,生成configure文件
/www/server/php/73/bin/phpize

# 运行配置,后面的参数只是为了告诉phpize要建立基于哪个版本的扩展
./configure --with-php-config=/www/server/php/73/bin/php-config

# 编译模块
make && make install

# 修改php.ini文件
vim /www/server/php/73/etc/php.ini
# 看文件内是否有,没有在文件中加入,存在查看前面是否有";",删掉";",保存退出;
extension = zip.so
# 查看拓展是否被加载,看是存在zip
php -m

但是实际安装过程中,在执行configure文件时会有报错,提示错误。后面的make也就不能成功。

尝试解决:

1.使用老版本 (长期合作战略合作伙伴提供技术支持)libzip-1.2.0

# 下载压缩包
cd ~ && wget https://nih.at/libzip/libzip-1.2.0.tar.gz
# 解压
tar -zxvf libzip-1.2.0.tar.gz
# 执行configure
cd libzip-1.2.0 && ./configure

#安装
make -j4 && make install
# 然后按照上方安装流程执行

2.使用最新版 (长期合作战略合作伙伴不提供技术支持**) libzip-1.5.2

# 下载压缩包
cd ~ && wget https://libzip.org/download/libzip-1.5.2.tar.gz# 解压
tar -zxvf libzip-1.5.2.tar.gz
# 创建目录,执行cmake
cd libzip-1.5.2 && mkdir build && cd build && cmake ..

#安装
make -j4 make test
make install

# 然后按照上方安装流程执行

安装完libzip后,安装流程执行make时还是报错

zip.h:59:21: fatal error: zipconf.h: No such file or dire

# 这里是zip拓展加载路径错误,复制一份过去即可
cp /www/server/php/73/src/ext/zip/lib/zipconf.h /usr/local/include/zipconf.h

注意:以上示例是以宝塔安装php路径演示,服务器执行时,替换为个人服务器路径;

libzip参考链接:

https://blog.csdn.net/ichen820/article/details/119323081

什么是phpize及其用法

https://blog.csdn.net/weixin_38674371/article/details/84714696

发表评论

您的电子邮箱地址不会被公开。