我想在使用Homebrew的山狮上使用php 5.4.11安装mcrypt支持,并且我遇到了问题,无法解决。在山狮上使用Homebrew安装mcrypt支持的问题
我已经在我的Mac上手动安装了PHP 5.4.11。以前使用Homebrew安装过mcrypt。
当我加载phpMyAdmin时,它会告诉我mcrypt未启用。
因此,搜索谷歌,我意识到,不知何故,mcrypt没有被加载,因为当我加载我的phpinfo文件没有提及它。
@DavidYell在另一个问题的响应,Installing mcrypt extension for PHP on OSX Mountain Lion提出以下修补程序
brew install mcrypt php53-mcrypt
下面是我发出命令的结果:
$ brew install mcrypt php54-mcrypt
Error: mcrypt-2.5.8 already installed
==> Installing php54-mcrypt dependency: autoconf
==> Downloading http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/usr/local/Cellar/autoconf/2.69
==> make install
/usr/local/Cellar/autoconf/2.69: 69 files, 2.0M, built in 29 seconds
==> Installing php54-mcrypt dependency: freetype
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/freetype-2.4.10.mountainlion.bottle.tar.gz
######################################################################## 100.0%
==> Pouring freetype-2.4.10.mountainlion.bottle.tar.gz
/usr/local/Cellar/freetype/2.4.10: 56 files, 2.5M
==> Installing php54-mcrypt dependency: gettext
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/gettext-0.18.2.mountain_lion.bottle.tar.gz
######################################################################## 100.0%
==> Pouring gettext-0.18.2.mountain_lion.bottle.tar.gz
==> Caveats
This formula is keg-only: so it was not symlinked into /usr/local.
OS X provides the BSD gettext library and some software gets confused if both are in the library path.
Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:
LDFLAGS: -L/usr/local/opt/gettext/lib
CPPFLAGS: -I/usr/local/opt/gettext/include
==> Summary
/usr/local/Cellar/gettext/0.18.2: 366 files, 11M
==> Installing php54-mcrypt dependency: libpng
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/libpng-1.5.13.mountainlion.bottle.tar.gz
######################################################################## 100.0%
==> Pouring libpng-1.5.13.mountainlion.bottle.tar.gz
/usr/local/Cellar/libpng/1.5.13: 14 files, 1.0M
==> Installing php54-mcrypt dependency: zlib
==> Downloading http://zlib.net/zlib-1.2.7.tar.gz
######################################################################## 100.0%
==> Patching
patching file configure
==> ./configure --prefix=/usr/local/Cellar/zlib/1.2.7
==> make install
==> Caveats
This formula is keg-only: so it was not symlinked into /usr/local.
Mac OS X already provides this software and installing another version in
parallel can cause all kinds of trouble.
Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:
LDFLAGS: -L/usr/local/opt/zlib/lib
CPPFLAGS: -I/usr/local/opt/zlib/include
==> Summary
/usr/local/Cellar/zlib/1.2.7: 9 files, 384K, built in 15 seconds
==> Installing php54-mcrypt dependency: php54
==> Downloading http://www.php.net/get/php-5.4.11.tar.bz2/from/this/mirror
######################################################################## 100.0%
==> Downloading patches
######################################################################## 100.0%
==> Patching
patching file Makefile.global
patch unexpectedly ends in middle of line
==> ./configure --prefix=/usr/local/Cellar/php54/5.4.11 --localstatedir=/usr/local/var --sysconfdir=/usr/local/etc/php/5.4 --with-config-file-path=/usr/local/etc/php/5.4 --with-config-file-scan-dir=/usr/local/etc/php/5.4/conf.d --with-iconv-dir=/usr --enable-dba --with-ndbm=/usr --enable-exif --enable-soap --enable-w
==> make
==> make install
==> /usr/local/Cellar/php54/5.4.11/bin/pear config-set php_ini /usr/local/etc/php/5.4/php.ini
==> Caveats
To enable PHP in Apache add the following to httpd.conf and restart Apache:
LoadModule php5_module /usr/local/Cellar/php54/5.4.11/libexec/apache2/libphp5.so
The php.ini file can be found in:
/usr/local/etc/php/5.4/php.ini
✩✩✩✩ PEAR ✩✩✩✩
If PEAR complains about permissions, 'fix' the default PEAR permissions and config:
chmod -R ug+w /usr/local/Cellar/php54/5.4.11/lib/php
pear config-set php_ini /usr/local/etc/php/5.4/php.ini
✩✩✩✩ Extensions ✩✩✩✩
If you are having issues with custom extension compiling, ensure that this php is
in your PATH:
PATH="$(brew --prefix josegonzalez/php/php54)/bin:$PATH"
PHP54 Extensions will always be compiled against this PHP. Please install them
using --without-homebrew-php to enable compiling against system PHP.
==> Summary
/usr/local/Cellar/php54/5.4.11: 485 files, 37M, built in 7.2 minutes
==> Installing php54-mcrypt
==> Downloading http://www.php.net/get/php-5.4.11.tar.bz2/from/this/mirror
######################################################################## 100.0%
==> /usr/local/Cellar/php54/5.4.11/bin/phpize
==> ./configure --prefix=/usr/local/Cellar/php54-mcrypt/5.4.11 --with-php-config=/usr/local/Cellar/php54/5.4.11/bin/php-config --with-mcrypt=/usr/local/Cellar
==> make
==> Caveats
To finish installing mcrypt for PHP 5.4:
* /usr/local/etc/php/5.4/conf.d/ext-mcrypt.ini was created,
do not forget to remove it upon extension removal.
* Restart your webserver.
* Write a PHP page that calls "phpinfo();"
* Load it in a browser and look for the info on the mcrypt module.
* If you see it, you have been successful!
==> Summary
/usr/local/Cellar/php54-mcrypt/5.4.11: 3 files, 56K, built in 111 seconds
与sudo apachectl restart
我重启动Apache后重新加载phpinfo,仍然没有mcrypt。
由于php54-mcrypt安装在PHP的Homebrew安装中,我继续使用brew uninstall php54-mcrypt
卸载它,然后使用brew install php54-mcrypt --without-homebrew-php
重新安装。
重新启动apache并加载phpinfo,仍然没有mcrypt。
如何解决此问题。我很乐意为我安装自制软件,php,crypt和phpmyadmin,但我似乎无法用我当前的设置来解决这个问题,该设置基于http://mac.tutsplus.com/tutorials/server/upgrading-the-native-php-installation-on-os-x-mountain-lion/中的建议。
谢谢。
是的。这在我的机器上不起作用。 –
@EricLeroy:您可能需要从上面的php5_module链接中删除“usr”。当我这样做,它为我工作。 (如果问题是PHP版本) 如果是mcrypt,我必须使用“brew卸载mcrypt”然后“brew install php55-mcrypt”。 (对于PHP5.5)最终你会得到它。 –
经过长时间的搞乱mcrypt之后,我发现'brew卸载mcrypt'是缺少的一块。 – tomvo