php 多版本安装扩展
因为项目中有使用imagick扩展所以需要在homestead环境中安装imagick扩展,
但是因为是多版本php所以在安装扩展的过程中遇到一些问题,所以记录一下多版本php安装扩展的踩坑过程
下载扩展源码包
首先去pecl官网去下载所需要安装扩展包,这里以imagick扩展为例
1 | wget https://pecl.php.net/get/imagick-3.6.0RC2.tgz |
进行解压
1 | tar -zxvf imagick-3.6.0RC2.tgz |
开始编译安装
解压完成后,cd进入文件夹
1 | cd imagick-3.6.0RC2 |
首先需要phpize(如果没有安装,则须安装php-dev)默认homestead是安装了的所以不需要再安装一遍
1 | phpize && ./configure –with-php-config=/usr/bin/php-config7.4(指定版本的php-config地址) |
这里./configure可能会报错,信息为configure: error: not found. Please provide a path to MagickWand-config or Wand-config program.
解决方案为
1 | sudo apt-get install build-essential |
然后进行编译安装
1 | sudo make && sudo make install |
没问题的话就接着做以下操作
1 | cd /etc/php/你想要安装的php版本/mods-available/ |
重启php-fpm
编译完成后需要重启fpm,首先查看php-fpm的master进程号
1 | ps aux|grep php-fpm |
然后kill主进程
1 | kill -USR2 679 |
就可以了
参考的文章链接
https://blog.csdn.net/qq_16885135/article/details/78130281
https://blog.csdn.net/cpainter/article/details/53401831
https://blog.51cto.com/u_9025736/2372445
https://zhuanlan.zhihu.com/p/113112043