mac系统下为 php 添加 pcntl 扩展


Posted in PHP onAugust 28, 2016

前言:

pcntl 介绍

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

phpize 介绍

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

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

安装:

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

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

然后按照如下步骤编译(演示的是给 MAMP的PHP 5.6.10版本添加 pcntl扩展):

$ tar -xzvf php-5.6.10.tar.gz
$ mv php-5.6.10 php
$ mkdir -p /Applications/MAMP/bin/php/php5.6.10/include
$ mv php /Applications/MAMP/bin/php/php5.6.10/include

$ cd /Applications/MAMP/bin/php/php5.6.10/include/php
$ ./configure

$ 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

$ cd ext/pcntl
$ phpize
$ ./configure
$ make
$ cp modules/pcntl.so /Applications/MAMP/bin/php/php5.6.10/lib/php/extensions/no-debug-non-zts-20131226/  

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

$ /Applications/MAMP/bin/php/php5.6.10/bin/php --ri pcntl
pcntl
pcntl support => enabled
PHP 相关文章推荐
php购物网站支付paypal使用方法
Nov 28 PHP
php中$_REQUEST、$_POST、$_GET的区别和联系小结
Nov 23 PHP
PHP中几种常见的超时处理全面总结
Sep 11 PHP
如何使用“PHP” 彩蛋进行敏感信息获取
Aug 07 PHP
PHP实现读取一个1G的文件大小
Aug 24 PHP
php三维数组去重(示例代码)
Nov 26 PHP
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
Dec 17 PHP
js+php实现静态页面实时调用用户登陆状态的方法
Jan 04 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
Mar 18 PHP
Yii框架参数配置文件params用法实例分析
Sep 11 PHP
php写app用的框架整理
Sep 29 PHP
Laravel 实现关系模型取出需要的字段
Oct 10 PHP
PHP编写简单的App接口
Aug 28 #PHP
PHP导出带样式的Excel示例代码
Aug 28 #PHP
总结对比php中的多种序列化
Aug 28 #PHP
PHP打印输出函数汇总
Aug 28 #PHP
PHP中include/require/include_once/require_once使用心得
Aug 28 #PHP
PHP常用的三种设计模式汇总
Aug 28 #PHP
Apache PHP MySql安装配置图文教程
Aug 27 #PHP
You might like
刚才在简化php的库,结果发现很多东西
2006/12/31 PHP
PHP中通过加号合并数组的一个简单方法分享
2011/01/27 PHP
Yii快速入门经典教程
2015/12/28 PHP
解决PHP上传非标准格式的图片pjpeg失败的方法
2017/03/12 PHP
PHP实现的AES 128位加密算法示例
2019/09/16 PHP
js 多种变量定义(对象直接量,数组直接量和函数直接量)
2010/05/24 Javascript
jquery.validate使用攻略 第三部
2010/07/01 Javascript
JS函数验证总结(方便js客户端输入验证)
2010/10/29 Javascript
javascript Window及document对象详细整理
2011/01/12 Javascript
ExtJS4如何自动生成控制grid的列显示、隐藏的checkbox
2014/05/02 Javascript
JS给超链接加确认对话框的方法
2015/02/24 Javascript
JS实现跟随鼠标闪烁转动色块的方法
2015/02/26 Javascript
JQuery中使文本框获得焦点的方法实例分析
2015/02/28 Javascript
jQuery拖拽插件gridster使用指南
2015/04/21 Javascript
整理Javascript流程控制语句学习笔记
2015/11/29 Javascript
js实现炫酷的左右轮播图
2017/01/18 Javascript
Angular 4.x+Ionic3踩坑之Ionic3.x pop反向传值详解
2018/03/13 Javascript
一文了解Vue中的nextTick
2019/05/06 Javascript
layui当点击文本框时弹出选择框,显示选择内容的例子
2019/09/02 Javascript
js布局实现单选按钮控件
2020/01/17 Javascript
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
详解Python装饰器由浅入深
2016/12/09 Python
python3.5基于TCP实现文件传输
2020/03/20 Python
Python中BeautifuSoup库的用法使用详解
2019/11/15 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
Django REST Framework 分页(Pagination)详解
2020/11/30 Python
CSS3实现超慢速移动动画效果非常流畅无卡顿
2014/06/15 HTML / CSS
Farah官方网站:男士服装及配件
2019/11/01 全球购物
高中毕业自我鉴定
2013/12/16 职场文书
公务员政审单位鉴定材料
2014/05/16 职场文书
政风行风评议个人心得体会
2014/10/29 职场文书
2014年银行客户经理工作总结
2014/11/12 职场文书
行政介绍信范文
2015/05/04 职场文书
2015年学校党建工作总结
2015/05/19 职场文书
2015年网络管理员工作总结
2015/05/21 职场文书
小学语文教师竞聘演讲稿范文
2019/08/09 职场文书