我的PHP集成環境用的是MxSrvs,需要的請留言或私信我。
電腦系統:MacOs
在使用workerman時候遇到
Fatal error: Uncaught Error: Call to undefined function pcntl_signal()
讓我安裝pcntl擴展。
1.先看一下PHP版本:
/Applications/MxSrvs/bin/php/bin/php -v
2.然後去https://www.php.net/releases/下載對應版本的PHP壓縮包,然後解壓
3.然後進入這個解壓文件夾
4.生成配置文件:
先進pcntl
cd ext/pcntl
然後
/Applications/MxSrvs/bin/php/bin/phpize
如果報錯了
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
準備安裝autoconf(如果有安裝就不用這一步了)
brew install autoconf
如果brew也沒有,執行:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
中途輸入一下電腦密碼:
直到出現安裝成功!
再次安裝autoconfig
rew install autoconf
自動配置安裝完成後,執行生成配置文件
/Applications/MxSrvs/bin/php/bin/phpize
然後掛載配置
./configure --with-php-config=/Applications/MxSrvs/bin/php/bin/php-config
5.然後安裝:
make && make install
最後編譯安裝結果:
6.編輯php.ini文件,加入擴展pcntcl.so:
cd /Applications/MxSrvs/bin/php/etc
so文件在“/Applications/MxSrvs/bin/php/lib/php/extensions/no-debug-non-zts-20190902”目錄下
vim php.ini
加入
[pcntl]
extension="/Applications/MxSrvs/bin/php/lib/php/extensions/no-debug-non-zts-20190902/pcntl.so"
重啓PHP和ng
**
安裝其他擴展一樣的操作方式:
- cd到下載的php解壓包裏的etc文件夾下
/Applications/MxSrvs/bin/php/bin/phpize
./configure --with-php-config=/Applications/MxSrvs/bin/php/bin/php-config
make && make install
- php.ini文件引入擴展
extension="/Applications/MxSrvs/bin/php/lib/php/extensions/no-debug-non-zts-20190902/xxx.so"