MAMP环境PHP添加pcntl扩展

本人MAC 10.12系统

MAMP V3.5.2

由于要用workerman开发在线聊天系统

就是需要添加pcntl扩展

下面转至:飞鱼ll

前言:

pcntl 介绍

pcntl 扩展可以支持 PHP 的多线程操作。(非Unix类系统不支持此模块)

phpize 介绍

phpize 可以用来给 PHP 动态的添加扩展。比如编译 PHP 时忘记添加某扩展,后来想添加该扩展,即可以使用 phpize 动态的添加该扩展。

本文将介绍如何使用 phpize 给 Mac下的集成环境 MAMP 添加 PHP 的 pcntl 扩展。类 Unix 的环境都可以使用本方法安装,注意灵活变通。

修改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.0.8/bin:$PATH"

注:“=”号之后,“:”号之前的路径就是你要修改成的php的路径,我这里选取的是MAMP中自带的7.0.8版本。

保存后运行:source ~/.bash_profile,可能会报错,不用管。

就大功告成了,接着我们验证一下,另开terminal,输入which PHP,有没有发现默认php的路径已经修改好了呢。接下来就可以正常使用了,如果还不行,重启电脑就可以了。

安装:

下面演示的是给 MAMP的PHP 7.0.8版本添加 pcntl扩展。

下载和本地 PHP 版本对应的源码包,地址为:

http://www.php.net/releases/

然后按照如下步骤进行编译:

解压源码包并初始化目录

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

检测系统配置

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

添加一些标志来告诉系统怎样编译。MAMP PHP已经建成这样,如果不这样做,编译的共享对象将无法工作。

$ MACOSX_DEPLOYMENT_TARGET=10.10$ CFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"$ CCFLAGS="-arch i386 -arch x86_64 -g -Os -pipe"$ CXXFLAGS="-arch i386 -arch x86_64 -g -Os -pipe"$ LDFLAGS="-arch i386 -arch x86_64 -bind_at_load"$ export CFLAGS CXXFLAGS LDFLAGS CCFLAGS MACOSX_DEPLOYMENT_TARGET

编译 pcntl.so 文件

$ cd ext/pcntl

$ phpize

$ ./configure

$ make

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

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

向php.ini 文件中添加该扩展

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

pcntl现在应该已经启用,要检查是否安装成功,只需运行:

$ /Applications/MAMP/bin/php/php7.0.8/bin/php --ri pcntlpcntlpcntl support => enabled

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

PHP动态编译出现Cannot find autoconf的解决方法

wgethttp://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gztar -zvxf m4-1.4.9.tar.gzcd m4-1.4.9/./configure && make && make installcd ../wgethttp://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gztar -zvxf autoconf-2.62.tar.gzcd autoconf-2.62/./configure && make && make install

参考链接:

http://blog.csdn.net/lipeiran1987/article/details/54942896

http://www.jianshu.com/p/ec88a61a0fa8

http://www.cnblogs.com/wt645631686/p/6868476.html

添加Swoole扩展

https://www.shiqidu.com/p/185

通过brew 安装

brew install php71sudo chown -R $(whoami) $(brew --prefix)/*brew link php71.zshrc 添加export PATH=/usr/loacl/opt/[email protected]/bin:$PATHexport PATH=/usr/loacl/opt/[email protected]/sbin:$PATH重新打开终端

作者:飞鱼ll

链接:https://www.jianshu.com/p/afe342cf7d3c

來源:

著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

按照上面步骤并未成功提示-bash: ./configure: No such file or directory此方法就放弃了

你可能感兴趣的:(MAMP环境PHP添加pcntl扩展)