【问题标题】:How to enable pcntl extensions in MAMP pro?如何在 MAMP pro 中启用 pcntl 扩展?
【发布时间】:2018-05-28 02:44:27
【问题描述】:

我在 Osx MAMP pro 中使用 laravel/horizo​​n

当我运行作曲家时,它需要laravel/horizon:~1.0

它显示一条消息 -

laravel/horizo​​n v1.0.8 需要 ext-pcntl * -> 请求的 PHP 您的系统中缺少扩展 pcntl。

我检查了文件夹/Applications/MAMP/bin/php7.1.1/php/ext,它不包含 pcntl 扩展名。

如何安装它?

【问题讨论】:

    标签: mamp laravel-horizon


    【解决方案1】:
    1. http://www.php.net/releases/下载php
    2. tar -xzvf php-7.2.1.tar.gz
    3. cd php-7.2.1/ext/pcntl
    4. /Applications/MAMP/bin/php/php7.2.1/bin/phpize
    5. 正如@drawjoh提到的./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.1/bin/php-config --prefix=/Applications/MAMP/bin/php/php7.2.1/bin/php
    6. make && make install
    7. 终端显示

    Installing shared extensions: /Applications/MAMP/bin/php/php7.2.1/lib/php/extensions/no-debug-non-zts-20170718/

    1. 打开MAMP PRO菜单->文件->编辑模板->PHP->7.2.1在php.ini文件末尾添加extension=pcntl.so

    2. 运行命令php --ri pcntl 并显示 pcntl pcntl support => enabled

    【讨论】:

    • 警告!!!确保您执行了第 8 步。如果您在 /Applications/MAMP/bin/php/php7.2.1/conf/php.ini 中编辑 php.ini,它将无法正常工作。 php -m 什么都不显示。唯一的方法是在 MAMP pro 中编辑 php.ini 文件
    • 我在 make 时遇到了这个错误:/Users/ikkez/Downloads/php-7.3.8/ext/pcntl/pcntl.c:32:10: fatal error: 'php.h' file not found ... 知道如何解决这个问题吗?
    • 对于在第 5 步遇到 'php.h file not found 错误的任何人...,请添加 --with-php-config= -- 这样它看起来像:./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.1/bin/php-config --prefix=/Applications/MAMP/bin/php/php7.2.1/bin/php
    【解决方案2】:

    只是一个补充。也许您按照上述步骤操作,仍然无法将其安装到/Applications/MAMP/bin/php/php7.2.1/lib/php/extensions/no-debug-non-zts-20170718/。这是我所做的对我有用的事情。

    我在--prefix 标志之前添加了--with-php-config,它起作用了。请参阅下面的步骤。

    1. http://www.php.net/releases/下载你的MAMP php版本@我的是php7.2.22

    打开您的终端并 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/
    

    然后你可以重复上面的最后两个步骤。

    【讨论】:

      【解决方案3】:

      你可以从这里https://github.com/khanakiaphp/mamp_extensions下载预编译的扩展

      【讨论】:

        猜你喜欢
        • 2011-07-10
        • 2021-09-17
        • 2020-03-17
        • 2016-10-09
        • 2015-07-14
        • 1970-01-01
        • 2017-03-13
        • 2014-01-04
        相关资源
        最近更新 更多