Estoy tratando de instalar mcrypt apoyo en php 5.4.11 en Mountain Lion usando Homebrew y me estoy poniendo de los problemas que no puedo resolver.

Yo ya había instalado manualmente PHP 5.4.11 en mi Mac. mcrypt había sido instalado previamente el uso de Homebrew.

Cuando quiero cargar phpMyAdmin, me dicen que mcrypt no está habilitado.

Así, buscar en google, me di cuenta de que, de alguna manera, mcrypt no estaba siendo cargado como no hay ninguna referencia a ella cuando me carga mi phpinfo archivo.

@DavidYell en respuesta a otra pregunta, La instalación de la extensión mcrypt PHP en OSX Mountain Lion sugirió la revisión siguiente

brew install mcrypt php53-mcrypt

A continuación es el resultado de mi emitir el comando:

$ 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

Después de reiniciar apache con sudo apachectl restart me reloaded phpinfo y todavía no mcrypt.

Desde php54-mcrypt fue instalado en el Homebrew de la instalación de php, me fui por delante y lo desinstala con brew uninstall php54-mcrypt y, a continuación, reinstalar el uso de brew install php54-mcrypt --without-homebrew-php.

Reinicia apache y cargado phpinfo, y todavía no mcrypt.

¿Cómo puedo solucionar este problema. Yo estaría feliz de tener sólo homebrew instalar php, cripta, y phpmyadmin para mí, pero me parece que no puede resolver este problema con mi configuración actual, que se basa en el asesoramiento encontrado en http://mac.tutsplus.com/tutorials/server/upgrading-the-native-php-installation-on-os-x-mountain-lion/.

Gracias.

OriginalEl autor Ali Samii | 2013-02-04

1 Comentario

  1. 12

    Bueno, después de mucho ensayo y error, he resuelto el problema.

    Primero tuve que desinstalar php54-mcrypt de nuevo para eliminar el --without-homebrew-php bandera y volver a instalarlo con soporte para la versión de php instalada por homebrew.

    $ brew uninstall php54-mcrypt
    Uninstalling /usr/local/Cellar/php54-mcrypt/5.4.11...
    $ brew install php54-mcrypt
    ...
    ==> Summary
    🍺  /usr/local/Cellar/php54-mcrypt/5.4.11: 3 files, 56K, built in 33 seconds

    Entonces, he editado mi httpd.conf archivo y cambiar la ubicación de php. Sólo me comentó el sistema de PHP y se añade una nueva línea a la LoadModule directivas para el PHP instalado a través de Homebrew.

    #LoadModule php5_module libexec/apache2/libphp5.so
    LoadModule php5_module /usr/local/Cellar/php54/5.4.11/libexec/apache2/libphp5.so

    Luego de instalar phpmyadmin a través de Homebrew con

    brew install phpmyadmin

    Luego he añadido lo siguiente a la parte inferior de httpd.conf

    Alias /phpmyadmin /usr/local/share/phpmyadmin
    <Directory /usr/local/share/phpmyadmin/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
    </Directory>

    Hice cualquiera de los cambios que necesita hacer en el homebrew instalado php.ini ubicado en /usr/local/etc/php/5.4/php.ini y modificado el archivo de configuración de phpmyadmin situado en /usr/local/share/phpmyadmin/config.inc.php.

    Luego reinicie apache usando sudo apachectl restart

    Todo está bueno para ir!

    sí. que no funciona en mi máquina.
    Puede que tenga que quitar «usr» a partir de la php5_module enlace de arriba. Cuando hice eso, a mí me funcionó. (Si el problema es la versión de PHP) Si es mcrypt, he tenido que usar la «cerveza desinstalar mcrypt» y luego «brew install php55-mcrypt». (para PHP5.5) se obtendrá finalmente, la derecha.
    Después de jugar con mcrypt por un largo tiempo, descubrí que brew uninstall mcrypt era la pieza que faltaba.
    Creo que usted tiene que utilizar esta ruta para incluir el módulo de php: LoadModule php5_module /usr/local/opt/php54/libexec/apache2/libphp5.so La temporada es que no hay una estricta versión de php de dependencia en él.

    OriginalEl autor Ali Samii

Dejar respuesta

Please enter your comment!
Please enter your name here