Domanda

Ora ho provato per ore ottenere xDebug (2.0.5 compilata dai sorgenti) per lavorare sul mio MacBook OS X con NetBeans 6.8. Ho installato MAMP e sto eseguendo un programma piccolo PHP (5.2) test con essa, nessun problema. Ma quando cerco di eseguire il debug ricevo questo testo in Netbeans: "In attesa di connessione (NetBeans-xdebug)" e niente di più accade. Netbeans è configurato per Debugger Port 9000. No Zend ottimizzazione in MAMP.

Ho seguito questo: http: //netbeans.org/kb/docs/php/configure-php-environment-mac-os.html#installEnableXdebug e http://www.xdebug.org/docs/install e http://forums.netbeans.org/topic1513-0-asc-0 .html etc

Qui è parte della mia php.ini

[XDebug]

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

;[Zend]

;zend_optimizer.optimization_level=15

;zend_extension_manager.optimizer=/Applications/MAMP/bin/php5/zend/lib/Optimizer-3.3.9

;zend_optimizer.version=3.3.9

; Xdebug config for Mac OS X and NetBeans IDE

zend_extension=/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so

xdebug.remote_enable=1

xdebug.remote_handler=dbgp

xdebug.remote_mode=req

xdebug.remote_host=localhost

xdebug.remote_port=9000

xdebug.idekey="netbeans-xdebug"

Ho letto un sacco di istruzioni per l'installazione, ecc e phpinfo spettacolo che xDebug è installato OK come V.5.2.11 (visto attraverso "pagina iniziale Open" in MAMP). Tuttavia quando provo a terminale -m PHP non vedo xdebug elencato. Ho finalmente capito che PHP.INI sono lette da / etc così ho copiato il MAMP php.ini per php.ini lì, quindi aggiunto il xdebug.se, localhost, porta 9000 ecc informazioni lì. Dopo di che xdebug elencato quando faccio PHP -m troppo, ma ho ancora il problema NetBeans. Strano abbastanza php -i mostra la versione 5.2.10, 5.2.11, non come sopra!

Inoltre ho provato questo, aggiungendo il "NetBeans-xdebug" per idekey: Perché xdebug non stabilire una connessione con NetBeans?

Come mai PHP_INFO () sembrava trovare il mio file php.ini sotto ../ MAMP / ... e non quando si fa PMP -m quando sono lette da / etc?

Come posso ottenere PHP per trovare sempre il file INI sotto MAMP in modo da non devo usare due file php.ini per et phpinfo () e PHP -m a lavorare?

Come posso risolvere il problema NetBeans ora che xDebug sembra essere installato correttamente, ma ancora non funziona in NetBeans? Qualcosa con questa esigenza di doppia php.ini? Potrei compilato xdebug sbagliato, come sapere? Qualcosa con versioni di PHP in xdebug / php? Come controllare?

Ecco una parte del risultato da -i php:

xdebug

xdebug support => enabled
Version => 2.0.4

Supported protocols => Revision
DBGp - Common DeBuGger Protocol => $Revision: 1.125.2.6 $
GDB - GNU Debugger protocol => $Revision: 1.87 $
PHP3 - PHP 3 Debugger protocol => $Revision: 1.22 $

Directive => Local Value => Master Value
xdebug.auto_trace => Off => Off
xdebug.collect_includes => On => On
xdebug.collect_params => 0 => 0
xdebug.collect_return => Off => Off
xdebug.collect_vars => Off => Off
xdebug.default_enable => On => On
xdebug.dump.COOKIE => no value => no value
xdebug.dump.ENV => no value => no value
xdebug.dump.FILES => no value => no value
xdebug.dump.GET => no value => no value
xdebug.dump.POST => no value => no value
xdebug.dump.REQUEST => no value => no value
xdebug.dump.SERVER => no value => no value
xdebug.dump.SESSION => no value => no value
xdebug.dump_globals => On => On
xdebug.dump_once => On => On
xdebug.dump_undefined => Off => Off
xdebug.extended_info => On => On
xdebug.idekey => pettermagnusson => netbeans-xdebug
xdebug.manual_url => http://www.php.net => http://www.php.net
xdebug.max_nesting_level => 100 => 100
xdebug.profiler_aggregate => Off => Off
xdebug.profiler_append => Off => Off
xdebug.profiler_enable => Off => Off
xdebug.profiler_enable_trigger => Off => Off
xdebug.profiler_output_dir => /tmp => /tmp
xdebug.profiler_output_name => cachegrind.out.%p => cachegrind.out.%p
xdebug.remote_autostart => Off => Off
xdebug.remote_enable => On => On
xdebug.remote_handler => dbgp => dbgp
xdebug.remote_host => 127.0.0.1 => 127.0.0.1
xdebug.remote_log => /tmp/xdebug.log => /tmp/xdebug.log
xdebug.remote_mode => req => req
xdebug.remote_port => 9000 => 9000
xdebug.show_exception_trace => Off => Off
xdebug.show_local_vars => Off => Off
xdebug.show_mem_delta => Off => Off
xdebug.trace_format => 0 => 0
xdebug.trace_options => 0 => 0
xdebug.trace_output_dir => /tmp => /tmp
xdebug.trace_output_name => trace.%c => trace.%c
xdebug.var_display_max_children => 128 => 128
xdebug.var_display_max_data => 512 => 512
xdebug.var_display_max_depth => 3 => 3

Cordiali saluti PM

È stato utile?

Soluzione 2

Ho scaricato il xDebug.so sbagliata da Komodo e in qualche modo anche la mia generazione era nulla di buono. Scaricato di nuovo e ora il suo OK. Wow, questo mi ha portato ore MOLTI, e nessuno potrebbe aiutare sia! / PM

Altri suggerimenti

How come PHP_INFO() seemed to find my PHP.INI file under ../MAMP/... and not when doing PMP -m when it is read from /etc ?

phpinfo() utilizza PHP binario di MAMP, mentre CLI utilizza il sistema operativo uno.

How can I get PHP to always find the INI file under MAMP so I dont have to use two PHP.INI files to et PHPINFO() and PHP -m to work?

Lascia il sistema operativo di PHP intatta in modo da non avere problemi di ammodernamento e modificare quello bubled con MAMP di cui hai bisogno.

How can I resolve the NetBeans problem now that xDebug seems to be installed correctly but still not working in NetBeans? Something with this need for dual php.ini? Could I have compiled xdebug wrong, how to know? Something with php versions in xdebug / php? How to check?

Scarica l'ultima versione di MAMP che include l'estensione xdebug compilato e aggiungere questo alla tua php.ini.

zend_extension="/Applications/MAMP/bin/php/php5.3.6/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"
xdebug.remote_host=localhost
xdebug.remote_port=9001
xdebug.remote_enable=1
xdebug.idekey="netbeans-xdebug"
xdebug.remote_log="/Applications/MAMP/logs/xdebug.log"

Io uso la porta 9001 come OSX non sembra come il default.

ho controllato e ri-controllato tutte le impostazioni e le istruzioni di configurazione e ancora sembrava che XDebug non ha funzionato. Alla fine ho riavviato il Mac e magicamente iniziato a lavorare. Forse questo aiuterà qualcuno nella stessa posizione come me.

Questo è ciò che funziona per me

brew install php55-xdebug

  • afferrare il percorso ini, quindi incollare il seguente all'ultimo
    php -i | grep 'Configuration File'
    vim /usr/local/etc/php/5.5/php.ini

  • aggiungere il seguente

    zend_extension = "/ usr / lib / php / extensions / non-debug-non-zts-20100525 / xdebug.so"

    xdebug.default_enable = 1
    xdebug.remote_enable = 1
    xdebug.remote_handler = dbgp
    xdebug.remote_host = localhost
    xdebug.remote_port = 9001
    xdebug.remote_autostart = 1

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top