2012-07-08 15 views
7

Tengo un problema al construir/instalar XDebug en Mac OSX con MAMP.Construyendo/Instalando XDebug en Mac OSX con MAMP

Realicé búsquedas extensamente en línea hasta el momento y en este momento estoy atascado por parte de XDebug "Installation Wizard" que me dice "Ejecutar: phpize" en el código fuente que descargué.

Cuando corro phpize me sale el siguiente mensaje:

new-host-2:xdebug-2.2.0 Dima$ phpize 
grep: /usr/include/php/main/php.h: No such file or directory 
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory 
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory 
Configuring for: 
PHP Api Version:   
Zend Module Api No:  
Zend Extension Api No: 
Cannot find autoconf. Please check your autoconf installation and the 
$PHP_AUTOCONF environment variable. Then, rerun this script. 

si hago un which phpize me sale:

new-host-2:xdebug-2.2.0 Dima$ which phpize 
/usr/bin/phpize 

Esta no es la versión que quiero usar, quiero usar la versión instalada de MAMP de phpize Supongo que quiero instalar XDebug en la versión de PHP de MAMP. Esto es desconcertante porque agregué la ruta de bin PHP específica de MAMP a mi .bash_profile ya en la variable $PATH.

Si corro echo $PATH me sale:

new-host-2:xdebug-2.2.0 Dima$ echo $PATH 
/opt/local/bin:/opt/local/sbin:/Applications/MAMP/bin/php/php5.4.3/bin:/Users/Dima/.rvm/gems/ruby-1.9.2-p290/bin:/Users/Dima/.rvm/gems/[email protected]/bin:/Users/Dima/.rvm/rubies/ruby-1.9.2-p290/bin:/Users/Dima/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin 

La ruta específica PHP MAMP aparece por delante de '/ usr/bin'. Lo siguiente que probé se está ejecutando el MAMP específica phpize dotándolo de toda la ruta manualmente, así:

new-host-2:xdebug-2.2.0 Dima$ /Applications/MAMP/bin/php/php5.4.3/bin/phpize 
-bash: /Applications/MAMP/bin/php/php5.4.3/bin/phpize: Permission denied 

Ahora he comprobado para permisos en estos archivos en Finder y que demuestra que tengo el permiso para leer y escribir los archivos esta carpeta Estoy un poco perdido. Cualquier ayuda sería apreciada en gran medida. Puedo publicar cualquier información adicional si sería útil para diagnosticar este problema.

Respuesta

3

Después de más investigación y ensayo y error logré instalarlo después de hacer las siguientes cosas:

  1. En la Terminal, me encontré chmod u+x /Applications/MAMP/bin/php/php5.4.3/bin/* Para abrir permiso de ejecución de phpize y todo lo demás en ese camino
  2. Siguiendo this article para instalar las herramientas de línea de comandos
  3. siguiendo this article para instalar la última autoconf y herramientas relacionadas
  4. Después de eso, siguiendo los pasos proporcionados por el XDebug Wizard funcionó sin ningún problema

Sin embargo, este fue un gran dolor de cabeza. Con suerte, esta respuesta le ahorrará a alguien más un poco de tiempo en el futuro.

8

Intenté lo anterior y no trabajé para mí, así que busqué en Google un poco más y esto es lo que hizo el truco.

  1. Descargar y descomprimir el MAMP Components de SourceForge

  2. Tome nota de la ruta (s) que no fueron encontradas durante el proceso de phpize, para mí fue:

    /Applications/MAMP/bin/php/php5.2.17/include/php/main/php.h 
    
    /Applications/MAMP/bin/php/php5.2.17/include/php/Zend/zend_modules.h 
    
    /Applications/MAMP/bin/php/php5.2.17/include/php/Zend/zend_extensions.h 
    
  3. Cree la ruta requerida en su directorio php de MAMP, nuevamente para mí fue

    /include/php/ 
    
  4. asegurar que los permisos correctos en el directorio

  5. Encuentra los componentes para su versión de PHP de destino (en mi caso 5.2.17) y copiarlos en la ruta que creó en el paso 3.

  6. Ejecutar las instrucciones para el uso de la versión correcta de phpize del Xdebug site

Espero que ayude a otra persona, ya que me llevó waaaay demasiado tiempo para resolver esto!

+0

Cualquier sugerencia ¿Dónde encontrar los componentes para su versión PHP objetivo? – greg

+1

Para encontrar esos archivos, descargue la fuente de PHP. es decir, para 5.4 utiliza este enlace: http://us2.php.net/get/php-5.4.4.tar.gz/from/a/mirror. Puede extraer y volcar todo en/Applications/MAMP/bin/php/php5.2.17/include/php/ realizado en el paso 3 o solo en el archivo requerido. o funcionará! – greg

11

tenía el mismo problema, pero encontró una solución mejor

XDebug ya está en MAMP.

Compruebe su php.ini

/Applications/MAMP/conf/php5.x/php.ini 

recorrer todo el camino hacia abajo. Verá

[xdebug] 
;zend_extension="/Applications/MAMP/bin/php5.X/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so" 

cambio que en

[xdebug] 
zend_extension="/Applications/MAMP/bin/php5.X/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so" 
xdebug.remote_enable=1 
xdebug.remote_host=localhost 
xdebug.remote_port=9000 
xdebug.remote_handler=dbgp 

Reiniciar el servidor ... HECHO!

http://danpolant.com/want-to-run-xdebug-mamp-is-the-easiest-way/

+0

De hecho. XDEBUG ya está listo para usar con MAMP (al menos versión PRO) – MEM

+0

¡Incluso con la versión no profesional, esta solución funciona! ¡Mucho más simple, gracias por tus instrucciones! : D – Daan

+0

Para mi caso, se encontró en: /Aplicaciones/MAMP/bin/php/php7.X/lib/php/extensions/no-debug-non-zts-20160303/xdebug.so –

0

su fácil en C: \ MAMP \ conf \ php xxx \ y abrir cada php.ini relacionados y luego sólo hay que poner estas líneas en php.ini

[xdebug] 

xdebug.default_enable=1 

xdebug.remote_enable=1 
xdebug.remote_handler=dbgp 
xdebug.remote_host=localhost 
xdebug.remote_port=9000 
xdebug.remote_autostart=1 

zend_extension="C:\MAMP\bin\php\php5.5.0\ext\php_xdebug.dll" 
+0

Hey Ramin, solo de su respuesta parece que está ofreciendo una solución para Windows, la pregunta siempre ha sido específica de Mac OS X, incluso lo dice en el título de la pregunta. –