MacでXdebugを有効にする

土曜日 , 7, 6月 2014 Leave a comment

追記:MAMPPを使うと一瞬でした・・・以下のように時間を使うぐらいならMAMPPを使ったほうが手間がなくて良さそうです。。。

 

php.iniを開いて以下の行を追加!!

 

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

 

そしてApache再起動!!

・・・で、終わるはずなのに終わらなかったのでその顛末をメモとして残しておく。

 

Failed loading xdebug.so image not found error

 

まず、通常の作業手順(MAPPとかXAMPPは使ってない。最初からインストールされているPHPを利用します)。

(sudoは省略)

 

#vi /etc/php.ini

 

(php.iniが存在しない場合はテンプレートがあるので以下のようにコピー)

#cp /etc/php.ini.default /etc/php.ini

 

 php.iniにXdebugの項目を追加

 

[xdebug]

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

xdebug.profiler_output_dir=”/tmp/xdebug_log”

xdebug.profiler_enable=On

xdebug.remote_enable=On

xdebug.remote_host=”localhost”

xdebug.remote_port=9000

xdebug.remote_handler=”dbgp”

xdebug.collect_vars=on

xdebug.collect_params=4あ

xdebug.dump_globals=on

xdebug.dump.GET=*

xdebug.dump.POST=*

xdebug.show_local_vars=on

 

Apacheを再起動。

 

#/usr/sbin/apachectl restart

 

phpinfo()でXdebugがあるか確認。

 

<?php
phpinfo();

 

上のようなコードを書いたPHPファウルを用意して、ブラウザからアクセス。

画像のようにXdeubの項目がphpinfoで表示されればOK・・・なんだけどなぜか表示されなかった。

スクリーンショット 2014-06-07 18.57.41

こうなるはず・・・

 

php.iniに何か書き間違いがあるかもしれない。

 

#php -i | grep xdebug

 

以下のようなエラーを確認。

 

Failed loading “/usr/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so”: dlopen(“/usr/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so”, 9): image not found

 

xdebugが読み込めてない?

 

久々make

 

権限とか、Webからxdebugを落としてくるとか色々やったけどうまくいかなかったのでソースからコンパイルすることに。

以下のページからsourceを落としてくる。

 

http://xdebug.org/download.php

 

この辺を参考にコンパイル。

 

http://www.webessentials.biz/php/beginer/xdebuginstall/

 

初期状態に近いmacだとautoconfが無いので、以下の参考にコンパイル。

 

http://www.4web8.com/9363.html

 

Comand Line Developer Toolも入れる(Marvericks以降とそれ以前ではやりかた違うっぽい)。

 

http://hiroki.jp/mavericks-command-line-developer-tools

 

この辺をやりつつコンパイルを完遂するとmodlulesディレクトリにxdebug.soができるので、差し替えるとXdebugがphpinfoで確認できました。

 

スクリーンショット 2014-06-07 18.57.41

 

何がやりたかったかというのと・・

 

FuelPHPの開発をSublime Textでやってみる際にXdebugが使えるかテストでした。

 

スクリーンショット 2014-06-07 19.11.37

 

 

うんうん、ちゃんとブレークポイント貼れてる。

 

 


Please give us your valuable comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です