macOS Sierra或者OS X EI Capitan安装PHP扩展出错,Operation not permitted, no-debug-non-zts
MacOS Sierra或者OS X EI Capitan安装PHP扩展出错
【错误】
装不了php的扩展,make install失败
RudonMacBook:igbinary-master rudon$ make install
Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20131226/
cp: /usr/lib/php/extensions/no-debug-non-zts-20131226/#INST@12567#: Operation not permitted
make: *** [install-modules] Error 1
cp: /usr/lib/php/extensions/no-debug-non-zts-20121212/#INST@17000#: Operation not permitted
【缘由】
原来是OSX 10.11 El Capitan(或更高)新添加了一个新的安全机制叫系统完整性保护System Integrity Protection (SIP),所以对于目录
/System
/sbin
/usr
不包含(/usr/local/)
仅仅供系统使用,其它用户或者程序无法直接使用,而我们的/usr/lib/php/extensions/刚好在受保护范围内
【解决】
所以解决方法就是禁掉SIP保护机制,步骤是:
- 重启系统
- 按住Command + R (重新亮屏之后就开始按,象征地按几秒再松开,出现苹果标志,ok)
- 菜单“实用工具” ==>> “终端” ==>> 输入csrutil disable;执行后会输出:Successfully disabled System Integrity Protection. Please restart the machine for the changes to take effect.
- 再次重启系统
禁止掉SIP后,就可以顺利的安装了,当然装完了以后你可以重新打开SIP,方法同上,只是命令是csrutil enable
OK!
现在可以正常的编译/添加各种扩展了。
【实例】
mac下安装php-redis扩展
# 参考自http://blog.csdn.net/chong2230/article/details/25964965
curl -O https://nodeload.github.com/nicolasff/phpredis/zip/master
tar -zxf master
cd phpredis-master/
phpize
./configure
make
sudo make install
# 提示 /usr/lib/php/extensions/no-debug-non-zts-xxxxxxxxx/ 表示成功
vim /etc/php.ini (如果没有,那就复制一份/etc/php.ini.default之类的并重命名)
# 添加下面这句话,保存文件
extension=redis.so
#重启apache
sudo apachectl restart
#查看扩展安装情况,出现 redis 表示安装成功。或者看phpinfo()
php -m |grep redis
【关联阅读】
http://www.cnblogs.com/yoainet/archive/2015/12/30/5088171.html
http://blog.csdn.net/chong2230/article/details/25964965
macOS Sierra或者OS X EI Capitan安装PHP扩展出错,Operation not permitted, no-debug-non-zts相关推荐
- OS X EI Capitan 安装mysql-5.7.9
先去下载mysql-5.7.9-osx10.9-x86_64.dmg 安装(一直下一步,输入密码即可)mysql-5.7.9-osx10.9-x86_64.pkg好了,启动MySQL服务. Untit ...
- Mac OS X10.11(OS X EI Capitan)安装程序下载
Mac OS X10.11(OS X EI Capitan)的安装程序(dmg文件)已经上传到百度网盘(直接安装即可).有需要者请加微信公众号:geekculture,并发送capitan或osx获取 ...
- Mac Pro 1,1 (2006旧款,A1186 EMC) 安装 OS X EI Capitan 图文教程.md
1. 硬件准备 CPU 升级 不升级 CPU 也可以,原装双路双核志强(Xeon)5150 可以直接使用 该型号 Mac Pro 工作站可升级的兼容 CPU: X5365 X5355 E5345 E5 ...
- 不能验证这个“安装 OS X EI Capitan”应用程序副本解决方法(已修正)
不能验证这个"安装 OS X EI Capitan"应用程序副本解决方法 最近黑苹果乐园制作的OS X EI Capitan 10.11.3自带Clover USB安装镜像,经过黑 ...
- android微信调试网页,Mac OS X EI Capitan 下调试 Android 微信内嵌网页
做微信开发的朋友一定遇到过这样的问题,在电脑上测试正常的网页到微信里面就出错了,不知道原因只能使用排除法一点点的排除,因为微信客户端无法输出浏览器中抛出的异常信息,对我们开发带来了很大的问题. 在网络 ...
- OS X EI Capitan 10.11.1快速升级方法介绍
公告:本文纯粹是给国内小水管用户而写的,如果你们家网络是100M光线那么就不需要看本文了! 一句话概要本文:在本地山寨从App store服务器上下载安装包的动作! 导读:OS X EI Capita ...
- 最详细的制作正式版10 11 OS X El Capitan 安装U盘的方法
原帖地址: http://bbs.feng.com/read-htm-tid-10036487.html 一.准备工作: 1.准备一个 8GB 或以上容量的 U 盘,确保里面的数据已经妥善备份好(该过 ...
- 2014年12月2日更新完英雄联盟一直显示无法连接服务器,【致想玩韩服LOL的Mac用户】macOS Sierra[10.12.4可用]下安装英雄联盟新客户端并连接到韩服服务器...
本帖子致那些想玩韩服LOL的Mac用户 首先,之前我写过一篇帖子是针对Mac用户用旧客户端玩韩服的,不过Riot Games于2017年4月24日废弃旧客户端,在这段时间到2017年5月6日内,均可以 ...
- 制作OS X El CAPITAN安装U盘
1.无论是在app store下载的El Capitan,还是网上直接下载的dmg镜像(双击即可),将图标拖动到应用程序组中: 2.准备一个空白U盘,使用磁盘工具进行清除(格式化):MAC OS扩展模 ...
- Mac OS自带PHP安装redis扩展
安装redis 在mac OS中可以使用brew命令进行安装redis:mac OS使用brew命令安装软件 安装命令:brew install redis 因为我已经安装过了,这里就不在赘述. 安装 ...
最新文章
- 运动桁架下压力信号采集与处理
- 如何给容器服务的Docker增加数据盘
- jdk与jre的区别 很形象,很清晰,通俗易懂
- html 数据钩子,22.钩子函数.html
- 【计算机图形学】实验:C#.net环境下的图形变换完整实验操作流程
- 打不开磁盘“D:\CentOS7\CentOS7.vmdk”或它所依赖的某个快照磁盘。
- 一文搞懂IT基础知识,讲通HTTP、TCP、IP、以太网
- Windows 命令 netstat 查看网络端口、telnet 检测对方端口是否可用
- Ubuntu GitHub操作——使用仓库
- Django思维导图-模板
- 配置Becon frame中的Carplay的Interworking和Vendor Specific字段信息
- 主题: 逆向英语学习方法
- 【解读大佑 】〔文/马世芳 吴清圣〕
- excel绘制双坐标折线图
- 设计原则 - 单一职责原则
- MSP430如何使用energia(TI公司的arduino简易编译器)
- AI识别PS篡改图像
- LeetCode 玩筹码
- Python爬虫爬取单张图片
- Python练习题答案: 转换货币II【难度:2级】--景越Python编程实例训练营,1000道上机题等你来挑战