我正在将 laravel/horizon 与 Osx MAMP pro 一起使用
当我运行它需要的作曲家时laravel/horizon:~1.0
它显示一条消息 -
laravel/horizon v1.0.8 需要 ext-pcntl * -> 您的系统中缺少请求的 PHP 扩展 pcntl。
我检查了文件夹/Applications/MAMP/bin/php7.1.1/php/ext
,它不包含 pcntl 扩展名。
我怎样才能安装它?
我正在将 laravel/horizon 与 Osx MAMP pro 一起使用
当我运行它需要的作曲家时laravel/horizon:~1.0
它显示一条消息 -
laravel/horizon v1.0.8 需要 ext-pcntl * -> 您的系统中缺少请求的 PHP 扩展 pcntl。
我检查了文件夹/Applications/MAMP/bin/php7.1.1/php/ext
,它不包含 pcntl 扩展名。
我怎样才能安装它?
tar -xzvf php-7.2.1.tar.gz
cd php-7.2.1/ext/pcntl
/Applications/MAMP/bin/php/php7.2.1/bin/phpize
./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.1/bin/php-config --prefix=/Applications/MAMP/bin/php/php7.2.1/bin/php
make && make install
Installing shared extensions: /Applications/MAMP/bin/php/php7.2.1/lib/php/extensions/no-debug-non-zts-20170718/
打开 MAMP PRO menu->File ->Edit Template->PHP->7.2.1extension=pcntl.so
在 php.ini 文件末尾添加。
运行命令php --ri pcntl
并显示
pcntl pcntl support => enabled
只是一个补充。也许您按照上述步骤操作仍然无法将其安装到/Applications/MAMP/bin/php/php7.2.1/lib/php/extensions/no-debug-non-zts-20170718/
. 这是我所做的对我有用的事情。
我在标志--with-php-config
之前添加了它,它起作用了。--prefix
请参见下面的步骤。
打开您的终端并 cd 进入您的下载文件夹。然后运行这个命令解压tar.gz文件
tar -xzvf php-7.2.22.tar.gz
解压后cd进入pcntl目录。
cd php-7.2.22/ext/pcntl
从终端运行下一行以配置 PHP Api、Zend Module Api 和 Zend Extension Api。
/Applications/MAMP/bin/php/php7.2.22/bin/phpize
然后运行
./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.22/bin/php-config --prefix=/Applications/MAMP/bin/php/php7.2.22/bin/php; make && make install;
你应该看到
Installing shared extensions: /Applications/MAMP/bin/php/php7.2.22/lib/php/extensions/no-debug-non-zts-20170718/
然后你可以重复上面的最后两个步骤。
您可以从这里下载预编译的扩展https://github.com/khanakiaphp/mamp_extensions