xdebugでリモートデバッグ LinuxサーバとWindowsXpクライアントで

xdebugでリモートデバッグ

リモート側 Linux
デバッグIDE側 Eclipse+WindowsXp

がなかなかうまくいかず、遂に動いた記録。




xdebug-2.1.0は
/root/xdebug-2.1.0/xdebug.c:1550: error: `zend_throw_exception_hook' undeclared (first use in this function)
make: *** [xdebug.lo] エラー 1
コンパイルが出来なかった。

xdebug-1.3.2
コンパイル出来るのだが、
# php -m
PHP Warning: Unknown(): Unable to load dynamic library '/usr/lib/php4/xdebug.so' - /usr/lib/php4/xdebu g.so: undefined symbol: OnUpdateLong in Unknown on line 0
となってしまう。configure時のオプションを変えれば解消するらしいが、それはやらず、

http://xdebug.org/download.php から
xdebug-2.0.5.tar.zgをダウンロード。
#phpize
# ./configure --enable-xdebug
#make
#make install
だとうまく動いた。

/etc/php.dに
xdebug.iniというファイルを作成。そうするとphp起動時、もしくはApahceからphpモジュールがロードされるときに読み込まれるようになる。下記のように書いた。

#vi /etc/php.d/xdebug.ini
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; for Xdebug
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
zend_extension = /usr/lib/php4/xdebug.so
xdebug.remote_enable=true



;eclipseを使うPCのアドレス↓
xdebug.remote_host=192.168.1.100 



;eclipseを実行するPCで使うポート番号↓
xdebug.remote_port=9000


xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug_profiler_output_dir = "/home/httpd/html/"