微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

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

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

 // 打开配置文件
  vim .bash_profile

  // 添加配置
  export PATH="/Applications/MAMP/bin/PHP/PHP7.1.20/bin:$PATH"

  // 配置文件生效
  source .bash_profile
  // 打开配置文件
  vim .zshrc

  // 添加配置
  export PATH="/Applications/MAMP/bin/PHP/PHP7.1.20/bin:$PATH"

  // 配置文件生效 尚有疑问
  source .zshrc

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. 终端显示以下信息,即为成功
Installing shared extensions:     /Applications/MAMP/bin/PHP/PHP7.1.20/lib/PHP/extensions/no-debug-non-zts-20170718/
  1. 打开mamp对应版本PHP配置文件添加 extension=pcntl.so
MAMP PRO menu->File ->Edit Template->PHP->7.1.20
  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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐