美文网首页
mac mamp workerman环境搭建,安装pcntl扩展

mac mamp workerman环境搭建,安装pcntl扩展

作者: 叶情宇 | 来源:发表于2019-07-31 08:56 被阅读0次

    本人开发平台是mac,使用的是mamp集成化的环境工具,最近为了socket编程,选择了php的workerman,在工作之前我们需要安装workerman的依赖环境,目前我们知道mac电脑是自带PHP的,然而mamp自己也给集成了php,一般为了方便使用,我们会使用mamp自带的php,而忽略mac自带的php,所有我们需要将默认的php由原先系统的指向mamp的php

    1.修改bash_profile文件切换Mac默认PHP版本为MAMP
    把mac上的默认php修改为MAMP等扩展环境中的php 版本,也就是不使用 mac 自带的。步骤如下:
    打开terminal。输入locate ~/.bash_profile, 找到我们需要编辑的文件的路径。
    cd 到该目录下执行sudo vim ~/.bash_profile,这个文件也有可能没有,如果没有就新建一个。
    在vim中打开或新建好该文件后在文件末尾添加
    export PATH="/Applications/MAMP/bin/php/php7.2.8/bin:$PATH"
    注:“=”号之后,“:”号之前的路径就是你要修改成的php的路径,我这里选取的是MAMP中自带的7.2.8/版本。
    保存后运行: source ~/.bash_profile,可能会报错,不用管。
    就大功告成了,接着我们验证一下,另开terminal,输入which PHP,有没有发现默认php的路径已经修改好了呢。接下来就可以正常使用了,如果还不行,重启电脑就可以了。

    2.关于workerman的扩展安装
    我们通过以下命令可以检测workerman扩展是否满足

    curl -Ss http://www.workerman.net/check.php | php
    

    目前我的环境是已经安装好了,不出意外的话您的第二行pcntl扩展是没有安装的,下面我来教你如何安装pcntl扩展


    WeWork Helper20190731083927.png

    1.我们需要去官网下载对应的php版本替换mamp自带的版本,mamp自带很多版本的,没有必要都下载,一般我会使用mamp自带的最新的版本,我的版本是7.2.8,我就会去官网找到对应的版本
    地址为:
    http://www.php.net/releases/

    2.我们需要将下载的版本解压退换掉mamp的PHP版本,命令如下,你也可以不用命令,自己解压,手动移动到对应的文件夹替换即可

    $ tar -xzvf php-7.2.8.tar.gz
    $ mv php-7.2.8 php
    $ mkdir -p /Applications/MAMP/bin/php/php7.2.8/include
    $ mv php /Applications/MAMP/bin/php/php7.2.8/include
    
    

    3.检测系统配置

    $ cd /Applications/MAMP/bin/php/php7.2.8/include/php
    $ ./configure
    

    如果你没有出错,那恭喜你了,我这边是有出错的,如下图


    4

    这时候更换下configure命令由./configure改为./configure --without-iconv得已解决

    4.编译 pcntl.so 文件(这是我们的关键)

    $ cd ext/pcntl
    $ phpize
    $ ./configure
    $ make
    

    这样不出意外你是已经编译成功了

    5.将编译出来的扩展文件pcntl.so 移动到php的扩展目录

    $ cp modules/pcntl.so /Applications/MAMP/bin/php/php7.2.8/lib/php/extensions/no-debug-non-zts-20170712/   
    

    注意 no-debug-non-zts-20170712/每个人是不一样的,你查看下你的文件夹名字是什么,替换即可,或者你手动复制过去即可

    6.向php.ini 文件中添加该扩展(关键)

    $ echo "extension=pcntl.so" >> /Applications/MAMP/bin/php/php7.2.8/conf/php.ini
    

    7.检测环境是否ok

    $ /Applications/MAMP/bin/php/php7.2.8/bin/php --ri pcntl
    pcntl
    pcntl support => enabled
    

    如出现以上信息,则说明该扩展已安装成功。

    PHP动态编译出现Cannot find autoconf的解决方法
    wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
    tar -zvxf m4-1.4.9.tar.gz
    cd m4-1.4.9/
    ./configure && make && make install
    cd ../
    wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz
    tar -zvxf autoconf-2.62.tar.gz
    cd autoconf-2.62/
    ./configure && make && make install

    code.png

    相关文章

      网友评论

          本文标题:mac mamp workerman环境搭建,安装pcntl扩展

          本文链接:https://www.haomeiwen.com/subject/xtiarctx.html