Linux手动编译PHP7的扩展库

"你说依赖,是我们的阻碍"——《彩虹》

为了极致编译干净的纯净版PHP7.2.5,追求最小化编译,本着能不装的PHP扩展就不装,就知道会有一天要我装各种libs,结果在用PhpSpreadsheet要求有php_zip库。编译时各种依赖,简直头疼。自己挖的坑,今天就来填

PhpSpreadsheet要求:

PHP version 5.6 or newer

PHP extension php_zip enabled

PHP extension php_xml enabled

PHP extension php_gd2 enabled (if not compiled in)

在Windows环境用最新的PHP7下妥妥的,连php.ini都不用改,移动到服务器Linux环境(CentOS7.3) ,

Fatal error: Uncaught Error: Class 'ZipArchive' not found in

解决办法:给服务器PHP补充php_zip扩展

在/root/php-7.2.5/ext 中有很多准备好但未被编译的库,其中就包括zip,所以不必去下载,只要编译后启用就行

编译成功出现如下提示:

这时候配置还未生效,在页面查看PHP的配置文件所在路径,从/root/php-7.2.5复制一份php.ini-development 重命名为php.ini 放到配置路径下

在第861行新增 extension=zip.so

重启Apache服务器

完工!

其他命令

查看PHP版本号

查看PHP启用模块

若提示-bash: php: command not found,需要给PHP配置环境变量

在/etc/中找到profile这个文件,在末尾加上两行

其中/usr/local/php/bin是php可执行程序位置,根据实际来设置

从坑里出来,就很透彻了。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180507G1W6YZ00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券