mamp下缺少pcntl扩展的解决办法,Fatal error: Call to undefined function pcntl_signal()

mac下默认使用的是自带的PHP,导致配置mamp的PHP始终无法成功

1. 如何将默认使用的PHP替换成mamp集成环境下的PHP

  • 修改bash中的配置

  • 修改zsh中的配置

2. 添加pcntl扩展

  1. 下载对应版本的PHP http://www.php.net/releases/
  2. 解压文件tar -xzvf php-7.1.20.tar.gz
  3. 进入pcntl目录cd php-7.1.20/ext/pcntl
  4. 进行phpize变异/Applications/MAMP/bin/php/php7.1.20/bin/phpize
  5. 执行命令 ./configure
    --with-php-config=/Applications/MAMP/bin/php/php7.1.20/bin/php-config --prefix=/Applications/MAMP/bin/php/php7.1.20/bin/php
  6. make编译`make && make install
  7. 终端显示以下信息,即为成功
  8. 打开mamp对应版本php的配置文件添加 extension=pcntl.so

  1. 执行php --ri pcntl 后,终端显示pcntl pcntl support => enabled就大功告成啦。

参考文档
https://www.jianshu.com/p/ec88a61a0fa8

https://stackoverflow.com/questions/47806090/how-to-enable-pcntl-extensions-in-mamp-pro/50266295

原创文章,作者:seabert,如若转载,请注明出处:https://bysjb.cn/mamp-pcntl.html