Mac os(OS X EI Capitan)下PHP安装Mcrypt扩展

一、下载 libmcrypt 最新版本:libmcrypt-2.5.8.tar.gz 在终端执行以下命令,编译并安装它:

tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure
make
sudo make install

二、在终端执行以下命令,查看当前 Mac OS X 系统当前默认安装的 PHP 版本:
php -v

得到的结果可能是这样的:OS X EI Capitan 默认安装的 PHP 版本是 5.5.29,下载对应版本的源码 php-5.5.29.tar.gz
在终端执行以下命令:

tar zxvf php-5.5.29.tar.gz
cd php-5.5.29/ext/mcrypt
phpize
./configure
make
sudo make install

说明:
执行make时如果报:找不到:php.h 头文件,按以下步骤操作:
1、执行下面命令,结果如在:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include 目录下
sudo find / -name php.h

2、进入到 php-5.5.29/ext/mcrypt 目录下,打开Makefile文件找到:INCLUDES 定义处将/usr/include/目录替换为当前系统的位置,如下:
PHP_INCLUDE=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include

#INCLUDES = -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -I/usr/local/include INCLUDES = -I/${PHP_INCLUDE}/php -I/${PHP_INCLUDE}/php/main -I/${PHP_INCLUDE}/php/TSRM -I/${PHP_INCLUDE}/php/Zend -I/${PHP_INCLUDE}/php/ext -I/${PHP_INCLUDE}/php/ext/date/lib -I/usr/local/include

3、执行完该步骤应该可以编译成功,会有该文件:
php-5.5.29/ext/mcrypt/modules/mcrypt.so

执行 sudo make install 提示没有权限,无论是用sudo 还是启用root用户都无法解决没有权限的问题,此时的解决方法是:

  • 进入 etc 目录下,将php.ini.default 复制一份改名为:php.ini

  • 在/Library 下新建 php-extension文件夹,将上面编译好的mcrypt.so 文件拷贝到php-extension文件夹中。

  • 在php.ini文件末尾添加:
    extension=/Library/php-extension/mcrypt.so

执行:php -m | grep mcrypt命令检查是否配置成,如果能查询到则说明配置成功。

配置参考:输入超链接描述

posted @ 2016-01-27 09:43  Forrest.Wang  阅读(314)  评论(0编辑  收藏  举报