Instalación de Yosemite / El Capitán php-gd + mcrypt

Resuelto Kyslik asked hace 54 años • 4 respuestas

¿Cómo instalar/habilitar php-gd y mcrypt en Yosemite 10.10 - compilación PHP 5.5.14?

tenga en cuenta que los siguientes pasos instalan el PHP 5.5.x más reciente

Para verificar si tiene gd y mcrypt instalados, use $ php -mpara mostrar los módulos compilados, continúe si le faltan los módulos deseados y consulte la respuesta aceptada .


Dios

Entonces, Apple instaló GD (y estás usando su versión de PHP, lo cual está bien), pero no incluyó soporte para PNG.

Definitivamente te falta el módulo gd "completo" (con soporte png) si: falta la función imagecreatefrompng() .

"Call to undefined function imagecreatefrompng()"

ingrese la descripción de la imagen aquí


mcripto

Instale Brew usando la respuesta aceptada y omita la parte con la instalación de gd (a menos que la necesite) y siga los siguientes pasos:

  1. hacer búsqueda -$ brew search mcrypt
  2. elige la versión de PHP que quieras
  3. instalar -$ brew install php55-mcrypt
  4. confirmar usando$ php -m | grep mcrypt

¿Quieres cambiar entre versiones de PHP?

Consulte brew-php-switcher y siga las instrucciones.

Kyslik avatar Jan 01 '70 08:01 Kyslik
Aceptado

Tienes razón, el PHP integrado de Yosemite viene sin soporte para PNG y FreeType.
Actualización 2015/10 para El Captian: con OS X 10.11, El Capitan PNG vuelve a ser compatible, pero aún falta FreeType.

Solución

Utilice el administrador de paquetes Homebrew para crear e instalar sin problemas un PHP completo y reemplazarlo en la configuración de Apache. Todo el proceso sólo lleva unos diez minutos si sigues los pasos a continuación.

Un recorrido rápido (pero completo)

(Nota 1: aquí uso Homebrew , un sistema de administración de paquetes para OS X. Si está familiarizado con MacPorts , otro administrador de paquetes, puede lograr los mismos resultados con ese sistema. También es posible usar mi solución Homebrew en paralelo a una instalación MacPorts existente en su máquina.)
(Nota 2: si desea leer todos los detalles sobre el proceso de instalación, eche un vistazo a la instalación básica de Homebrew y a la información de instalación de PHP de Homebrew . Pero realmente no la necesitará si sigue estos pasos.)

Ahora vámonos...

Primero instale Xcode desde App Store . Si ya la tienes, consulta la App Store nuevamente para asegurarte de que tienes la última versión.

Ahora necesita instalar las herramientas de línea de comandos de Xcode . Para hacerlo, abra una Terminal e ingrese:

xcode-select --install

El siguiente comando instalará el sistema de gestión de paquetes Homebrew:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

El guión explica lo que hará y luego hace una pausa antes de hacerlo.

El siguiente comando a ingresar es una especie de prueba de estado del sistema:

brew doctor

Esto verifica los conceptos básicos de la instalación de Homebrew.
Recibí una advertencia "Tiene MacPorts o Fink instalados: /opt/local/bin/port ..." que ignoré correctamente. ;)

Ahora configure el grifo homebrew/dupes que tiene las dependencias que necesitamos:

brew tap homebrew/dupes

Configure el grifo homebrew/versiones que también tiene las dependencias que necesitamos:

brew tap homebrew/versions

Luego ejecute el siguiente comando:

brew tap homebrew/homebrew-php

Ahora estás listo para finalmente construir PHP. Para obtener una lista de opciones de configuración disponibles, puede ejecutar una de estas:

brew options php55
brew options php56

Pero estaba bien usando los valores predeterminados.
Para hacerlo ingresa UNO de estos dos, dependiendo de tus necesidades:

brew install php55
brew install php56

(Esto lleva un tiempo, ¡tenga paciencia!)

Al instalar php56 (5.6.x) en Yosemite (10.10.5), hay un error. Consulte este problema en github. utilizar brew install php56 --without-ldapen su lugar.

Si recibe un error del tipo "No se puede encontrar OpenSSL", no ha instalado las herramientas de línea de comandos de Xcode como le dije al principio. ;) Continúe, instálelos y vuelva a ejecutar el último comando.

PHP ya está construido y el script terminará con algunos detalles sobre cómo usarlo:

Abra httpd.conf (debe estar ubicado en /private/etc/apache2/httpd.conf) y habilite PHP agregando UNA de estas dos líneas, dependiendo de la versión de PHP que acaba de instalar:

LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so

¡No olvide comentar cualquier línea LoadModule php5_module... existente que pueda estar presente en la propia versión PHP de Yosemite!

Reiniciar Apache

sudo apachectl restart

Su nuevo archivo php.ini se puede encontrar en: /usr/local/etc/php/5.5/php.ini

¡Disfrutar!

Jpsy avatar Oct 22 '2014 10:10 Jpsy

La respuesta de @Jpsy es buena, pero hay otra opción, de los chicos de liip, aquí . Este es un paquete PHP que viene prediseñado para Yosemite (las versiones anteriores también funcionan), pero es solo una línea de código:

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5

Después de eso, todo estará listo para funcionar como se esperaba. La configuración que viene con esa instalación es muy adecuada para el desarrollo de Symfony 2, pero debería funcionar bien con otros casos de uso.

Finalmente, si también necesita usar la CLI de PHP actualizada, pero no desea usar la versión de PHP que viene con el sistema operativo, también puede agregar a su .bash_profileo similar esta línea de código:

export PATH=/usr/local/php5/bin:$PATH

Patrick D'appollonio avatar Oct 25 '2014 05:10 Patrick D'appollonio

No tengo suficiente representante para hacer un comentario, pero si estás usando OS X Server para Yosemite (Versión 4 de la App Store), el archivo a editar es:

/library/server/web/config/apache2/httpd_server_app.conf

El mío se ve así ahora y confirmó que funciona después de usar PHP 5.6 de Homebrew.

#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so
user1618341 avatar Jan 05 '2015 20:01 user1618341