macOS 10.13系统下安装Mcrypt扩展遇阻求助
解决Mac上PHP7.2安装Mcrypt扩展的问题
首先得说清楚:你用brew install php5-mcrypt失败是完全正常的——这个包是给PHP5.x版本准备的,而你的PHP是7.2.4,版本不匹配,而且Homebrew早就移除了旧的PHP5相关的公式,所以肯定找不到。
针对你的情况(PHP7.2.4 + macOS10.13),我给你一步步来的具体操作:
第一步:确认你的PHP安装来源
先打开终端,运行这个命令:
which php
- 如果输出是
/usr/local/bin/php,说明你的PHP是通过Homebrew安装的(这也是推荐的方式),直接看第二步。 - 如果输出是
/usr/bin/php,那是系统自带的PHP,建议你先切换到Homebrew的PHP(后面会提),因为系统自带的PHP修改起来很麻烦。
第二步:安装Mcrypt库和PHP扩展
1. 安装Mcrypt基础库
在终端运行:
brew install mcrypt
这会先安装Mcrypt的底层依赖库。
2. 通过PECL安装PHP的Mcrypt扩展
PHP7.2已经把Mcrypt从核心移除了,所以需要用PECL(PHP的扩展仓库)来装适配版本:
pecl install mcrypt-1.0.1
(注意这里要指定1.0.1版本,这是目前支持PHP7.2的最新稳定版)
运行这个命令时,可能会提示你输入Mcrypt的安装路径,直接按回车用默认路径就行(Homebrew装的话路径会自动识别)。
第三步:把扩展添加到PHP配置文件
1. 找到你的php.ini位置
终端运行:
php --ini
看输出里的Loaded Configuration File一行,比如可能是/usr/local/etc/php/7.2/php.ini,把这个路径记下来。
2. 编辑php.ini添加扩展
用终端编辑器打开这个文件,比如用nano(新手友好):
nano /usr/local/etc/php/7.2/php.ini
在文件末尾添加一行:
extension="mcrypt.so"
然后按Ctrl+O保存,按Ctrl+X退出编辑器。
第四步:验证安装是否成功
终端运行:
php -m | grep mcrypt
如果输出mcrypt,说明扩展已经成功加载了。
现在再运行你的CodeIgniter项目,那个"The Encrypt library requires the Mcrypt extension."的错误应该就消失了。
内容的提问来源于stack exchange,提问作者Yesha Doshi
相关产品推荐
相关产品推荐

