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的无限分类实现想法~
Jan 02 PHP
PHP生成Flash动画的实现代码
Mar 12 PHP
PHP中遍历stdclass object的实现代码
Jun 09 PHP
不重新编译PHP为php增加openssl模块的方法
Jun 14 PHP
php 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
Jun 18 PHP
怎么在Windows系统中搭建php环境
Aug 31 PHP
php获取文件内容最后一行示例
Jan 09 PHP
PHP函数http_build_query使用详解
Aug 20 PHP
thinkphp的静态缓存用法分析
Nov 29 PHP
php使用substr()和strpos()联合查找字符串中某一特定字符的方法
May 12 PHP
CI框架常用函数封装实例
Nov 21 PHP
PHP实现数组和对象的相互转换操作示例
Mar 20 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中SESSION使用中的一点经验总结
2012/03/30 PHP
PHP面向对象程序设计之类常量用法实例
2014/08/20 PHP
THINKPHP在添加数据的时候获取主键id的值方法
2017/04/03 PHP
Thinkphp 框架扩展之标签库驱动原理与用法分析
2020/04/23 PHP
jQuery实现动画效果的实例代码
2013/05/07 Javascript
js里取容器大小、定位、距离等属性搜集整理
2013/08/19 Javascript
判断字符串的长度(优化版)中文占两个字符
2014/10/30 Javascript
JQuery的ON()方法支持的所有事件罗列
2015/02/28 Javascript
Bootstrap精简教程
2015/11/27 Javascript
Bootstrap 网站实例之单页营销网站
2016/10/20 Javascript
BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析
2016/12/01 Javascript
深入理解ES6的迭代器与生成器
2017/08/19 Javascript
vue中$nextTick的用法讲解
2019/01/17 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
2020/03/17 Javascript
Python读取环境变量的方法和自定义类分享
2014/11/22 Python
Python实现把json格式转换成文本或sql文件
2015/07/10 Python
python操作redis方法总结
2018/06/06 Python
基于anaconda下强大的conda命令介绍
2018/06/11 Python
python实现比较文件内容异同
2018/06/22 Python
python整合ffmpeg实现视频文件的批量转换
2019/05/31 Python
你还在@微信官方?聊聊Python生成你想要的微信头像
2019/09/25 Python
基于Python批量生成指定尺寸缩略图代码实例
2019/11/20 Python
Python语法垃圾回收机制原理解析
2020/03/25 Python
django 外键创建注意事项说明
2020/05/20 Python
Python3爬虫里关于识别微博宫格验证码的知识点详解
2020/07/30 Python
Python将QQ聊天记录生成词云的示例代码
2021/02/10 Python
python爬虫线程池案例详解(梨视频短视频爬取)
2021/02/20 Python
酒店副总岗位职责
2013/12/24 职场文书
你懂得怎么写自荐信吗?
2013/12/27 职场文书
品质管理部岗位职责范文
2014/03/01 职场文书
主管会计岗位职责
2014/03/13 职场文书
《晚上的太阳》教学反思
2014/04/23 职场文书
建筑工程造价专业自荐信
2014/07/08 职场文书
2014年优质护理服务工作总结
2014/11/14 职场文书
开学季:喜迎新生,迎新标语少不了
2019/11/07 职场文书
微信小程序用户授权最佳实践指南
2021/05/08 Javascript