mac安装php扩展相关的坑

1.由于我本地有两个php环境,系统自带的php版本是7.3,我安装了一个7.4版本之后直接使用phpize去操作发现7.4版本phpinfo并没有扩展,此处应该要选择对应版本的phpize,以及对应版本的 configure,例如我php7.4版本phpize目录在/Users/mac/service/php745/bin/phpize,那么执行phpize时,需要指定对应版本。configure也一样,./configure --bindir=/Users/mac/service/php745/bin --with-php-config=/Users/mac/service/php745/bin/php-config

2.安装amqp扩展时报错如下:

报错

这是因为没有安装amqp的依赖包rabbitmq-c,需要先安装rabbitmq-c,我最开始下载了最新版0.10.0版本,结果不知道什么原因没有configure文件,导致无法安装,于是找个低版本,下载地址:rabbitmq-c0.8.0,下载完成后解压并安装。

# cd rabbitmq-c-0.8.0
# ./configure --bindir=/Users/mac/service/php745/bin --with-php-config=/Users/mac/service/php745/bin/php-config --prefix=/usr/local/rabbitmq-c-0.8.0
# make && make install

出现如下提示说明安装成功:


安装成功

然后再次安装amqp:
进入amqp源码目录执行:

/Users/mac/service/php745/bin/phpize 
./configure --bindir=/Users/mac/service/php745/bin --with-php-config=/Users/mac/service/php745/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/rabbitmq-c-0.8.0
make && make install

出现:

安装成功

最后,修改php.ini,增加extensin:amqp.so,重启php-fpm。查看phpinfo,出现amqp,安装成功!
注意:mac中php.ini默认目录是etc下的php.ini.default,如果你是自己安装的php版本,那么可以在phpinfo中查看你的php.ini目录,如果该目录没有文件,可以copy ect/php.ini过去
php.ini目录

你可能感兴趣的:(mac安装php扩展相关的坑)