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执行速度全攻略(下)
Oct 09 PHP
使用php重新实现PHP脚本引擎内置函数
Mar 06 PHP
php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别
Aug 08 PHP
PHP类与对象中的private访问控制的疑问
Nov 01 PHP
php多功能图片处理类分享(php图片缩放类)
Mar 14 PHP
php生成图片验证码
Jun 09 PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
Aug 18 PHP
PHP代码优化技巧小结
Sep 29 PHP
PHP读取大文件末尾N行的高效方法推荐
Jun 03 PHP
PHP怎样用正则抓取页面中的网址
Aug 09 PHP
微信JSSDK分享功能图文实例详解
Apr 08 PHP
PHP架构及原理知识点详解
Dec 22 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
Windows中安装Apache2和PHP4权威指南
2006/11/18 PHP
php+mysql写的简单留言本实例代码
2008/07/25 PHP
解析php获取字符串的编码格式的方法(函数)
2013/06/21 PHP
php登陆页的密码处理方式分享
2013/10/14 PHP
windows7下安装php的php-ssh2扩展教程
2014/07/04 PHP
微信access_token的获取开发示例
2015/04/16 PHP
php实现的任意进制互转类分享
2015/07/07 PHP
php好代码风格的阶段性总结
2016/06/25 PHP
php无限极分类实现方法分析
2019/07/04 PHP
Javascript base64编码实现代码
2011/12/02 Javascript
基于jquery的不规则矩形的排列实现代码
2012/04/16 Javascript
javascript比较两个日期的先后示例代码
2014/12/31 Javascript
js+html5实现canvas绘制镂空字体文本的方法
2015/06/05 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
ES6中的数组扩展方法
2016/08/26 Javascript
基于vue.js实现侧边菜单栏
2017/03/20 Javascript
改变layer confirm弹窗按钮的颜色方法
2019/09/12 Javascript
[02:12]Dota 2 推出全新英雄—— 电炎绝手
2019/08/23 DOTA
在Python中调用ggplot的三种方法
2015/04/08 Python
python 动态加载的实现方法
2017/12/22 Python
Python使用type关键字创建类步骤详解
2019/07/23 Python
Django实现跨域请求过程详解
2019/07/25 Python
Python图像处理之图片文字识别功能(OCR)
2019/07/30 Python
keras自定义损失函数并且模型加载的写法介绍
2020/06/15 Python
matplotlib 画双轴子图无法显示x轴的解决方法
2020/07/27 Python
python 用struct模块解决黏包问题
2020/11/07 Python
德国家具折扣店:POCO
2020/02/28 全球购物
优秀员工自荐信范文
2013/10/05 职场文书
实习教师自我鉴定
2013/12/09 职场文书
平面网站制作专科生的自我评价分享
2013/12/11 职场文书
七匹狼男装广告词
2014/03/21 职场文书
竞选宣传委员演讲稿
2014/05/24 职场文书
企业员工薪酬方案
2014/06/04 职场文书
生日祝酒词大全
2015/08/10 职场文书
《搭石》教学反思
2016/02/18 职场文书
Appium中scroll和drag_and_drop根据元素位置滑动
2022/02/15 Python