2011年09月12日

EclipseでError launching〜 The session could not be startedのエラー

Eclipseでデバック実行すると下記のエラーメッセージが出る症状についてです。

Error launching '○○○(数字)'

The session could not be started.
In order to generate debug information,please make sure that the
debugger is properly configured as a php.ini directive



おそらくここまで検索してたどり着いて御覧になられる方の何人かは、新しく最新のEclipseをインストールした方だと御察し致します。

自分が参考にしたサイトの手順のとおりにphp.iniを設定したのに、デバックできずに、下記のようなページも参考に設定を試してみたと思います。

[PHP-users 34961] Re: phpデバッグ方法:eclipse
http://ml.php.gr.jp/pipermail/php-users/2010-January/035478.html
Eclipseデバッグ時の不具合
http://oshiete.goo.ne.jp/qa/6708138.html
Using PDT : Installation : Installing the Zend Debugger
http://www.thierryb.net/pdtwiki/index.php?title=Using_PDT_:_Installation_:_Installing_the_Zend_Debugger

結論を言うと、

Index of /pdt/server-debugger
http://downloads.zend.com/pdt/server-debugger/

この旧サイトで配布されているZend DebugerはPHPの5.2までしかないため、

[Debugger]
zend_extension_manager.debug_server_ts = "D:\xampp\php\zendOptimizer\lib\Debugger\php-5.2.x\ZendDebugger.dll"
zend_debugger.allow_hosts=127.0.0.1
zend_debugger.deny_hosts = all
zend_debugger.expose_remotely = always


のように書き加えたとしても、デバックしてくれないようです。

phpinfo();


でphpの情報を見ても、最初の表の下のロゴのZendEngine2に with 〜と表示されないと思います。

そこで僕はもうあきらめて、下記のリンクを参考にXdebugを入れました。

Windows 7 に PHP 5.3.5 + Apache 2.2.17 (Win32) + Xdebug 2.1.0 + Eclipse 3.6(Helios) PDT
http://quattrooooo.cocolog-nifty.com/blog/2011/02/windows-7-php-5.html

上記リンクはWindows7で、XPの場合は「PHP 5.3 VC6 TS (32 bit)」で動いてくれました。
※2011年9月12日時点の最新バージョンなので、その時にあったものを選んでください。

XDEBUG EXTENSION FOR PHP | DOWNLOADS
http://www.xdebug.org/download.php

今回は「PHP 5.3 VC6 TS (32 bit)」(2011年9月12日時点 最新)をダウンロードしてD:\xampp\php\extにphp_xdebug-2.1.1-5.3-vc6.dllをコピーしました。

それでphp.iniを下記のように書き換えました。

[XDebug]
zend_extension = "D:\xampp\php\ext\php_xdebug-2.1.1-5.3-vc6.dll"

その他(おそらくすでに試行錯誤した方なら同じような感じのはずです。)↓

[mime_magic]
mime_magic.magicfile = "D:\xampp\php\extras\magic.mime"

[Zend](今回の場合、これらのデバッガーはヴァージョンが違うので設定しても読み込んでくれません。)
zend_extension_ts = "D:\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
zend_extension_ts="D:\xampp\php\zendOptimizer\lib\Debugger\php-5.2.x\ZendDebugger.dll"
zend_extension_manager.optimizer_ts = "D:\xampp\php\zendOptimizer\lib\Optimizer\php-5.2.x\ZendOptimizer.dll"
zend_optimizer.enable_loader = 0
zend_optimizer.optimization_level=15/**

[Debugger]
zend_extension_manager.debug_server_ts = "D:\xampp\php\zendOptimizer\lib\Debugger\php-5.2.x\ZendDebugger.dll"
zend_debugger.allow_hosts=127.0.0.1
zend_debugger.deny_hosts = all
zend_debugger.expose_remotely = always


[XDebug]
xdebug.profiler_append = 0
xdebug.profiler_enable = 0
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "D:\xampp\tmp"
xdebug.profiler_output_name = "xdebug_profile.%R::%u"
xdebug.trace_output_dir = "D:\xampp\tmp"

この後、Eclipseのツールバーのウィンドウ→設定→PHP→PHP実行可能ファイルを選択→編集→PHPデバッガーをXDebugにする→Apacheを再起動。

これでデバッガーが出力してくれるようになります。

phpinfo();

で実行して、最初の表の下のロゴのZendEngine2に「 with Xdebug v2.1.1, Copyright (c) 2002-2011, by Derick Rethans 」とか書き加えられていれば成功です。

少し手持ち無沙汰な説明で恐縮ですが、おそらく迷いながら設定してここまでこられた方なら前述したリンクを参考にできると思います。

また、試してはいないのですが、 Zend Debugging(5.3以上対応)の新サイトもあるようです。

Eclipse Debugging with Zend Debugging Extension for PHP 5.3: New location for downloads
http://randyfay.com/node/68

Zend Studio Downloads
http://www.zend.com/products/studio/downloads

PHP 5.3用のZend Debugger はVC9 でコンパイルされた Windows バイナリに対応しています。




人気ブログランキングへ ←ポチッと押すとこのブログが推薦されます。押してくれると嬉しいな!

|edit re
posted by 時ニール at 22:11 | Comment(0) | TrackBack(0) | パソコン関連 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
Google+
ブログパーツ