在安装Laravel时,由于没有安装PHP的mcrypt扩展,所以导致了报错,折腾了好久,终于找到了完美的安装方法,现总结归纳如下:
报错:
Problem 1
- laravel/framework v5.0.9 requires ext-mcrypt * -> the requested PHP extension mcrypt is missing from your system.
第一种解决方法:
MacdeMacBook-Pro-3:StuGrade mac$ brew search mcrypt MacdeMacBook-Pro-3:StuGrade mac$ brew install mcrypt
①、用php -v 命令查看自己系统默认安装的PHP版本
MacdeMacBook-Pro-3:mcrypt mac$ PHP -v PHP 5.6.14 (cli) (built: Oct 3 2015 14:43:37) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
可以看出PHP版本为PHP 5.6.14,在PHP官网下载对应版本的源码:http://php.net/releases/index.php
②、切换到下载目录,并解压
#解压 tar zxvf php-5.6.14.tar.gz
curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-latest.tar.gz tar xvfz autoconf-latest.tar.gz cd autoconf-2.69/ ./configure make sudo make install
首先切换目录到下载解压后的php-5.6.14/ext/mcrypt的目录
cd php-5.6.14/ext/mcrypt phpize ./configure make sudo make install
复制编译好的文件:
MacdeMacBook-Pro-3:mcrypt mac$ sudo cp modules/mcrypt.so /usr/local/Cellar/php56/5.6.14/lib/php/extensions/no-debug-non-zts-20131226/
#修改php.ini文件: sudo vim /etc/php.ini #添加如下: extension=mcrypt.so
sudo apachectl restart
stackoverflow
系统:OS X 10.10.5
php版本:5.6.14
mac从10.10之后默认系统自带了php。小编之前在玩laravel的时候。laravel5.1用系统自带php启动没问题。但是laravel5.0用系统自带的php启动出错,错误信息如下
ErrorException in EncryptionServiceProvider.php line 16: Use of undefined constant MCRYPT_RIJNDAEL_128 - assumed 'MCRYPT_RIJNDAEL_128'
明显是缺少mcrypt拓展。小编上晚上找一些资料来解决。结果问题没解决,还把系统自带的php配置搞乱了很多。这两天新换ssd重装系统。玩laravel。又想自虐一下。哈哈哈。其实安装php mcrypt拓展很简单。首先你要有个brew。安装brew如下
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
然后安装mcrypt。
brew install mcrypt
brew install php55-mcrypt
当执行第二个的时候,会提示错误
Error: No available formula for php55-mcrypt
这是因为没有更新brew的安装源,
执行命令
brew tap homebrew/dupes brew tap josegonzalez/homebrew-php brew install php55-mcrypt
安装成功。
MacdeMacBook-Pro-3:StuGrade mac$ brew install php55-mcrypt
Error: Formulae found in multiple taps:
* homebrew/php/php55-mcrypt
* josegonzalez/php/php55-mcrypt
解决:
多个镜像地址,brew不知道该怎么办了!
brew untap homebrew/php
应为本地安装的为PHP56版本,所以这里需要安装对应的 php56-mcrypt
mac10.10.5安装php mcrypt拓展 http://www.tuicool.com/articles/JrUnyi7
安装成功后,用php -m查看是否安装成功:
php -m