メモです。
あまり動作と内容に保証は出来ないかもしれません。
そもそもKCachegrind は、プログラムのプロファイル結果を
グラフィカルに分かり易く表示してくれるオープンソースのソフトウェアです。
とりあえず他のサイトだとMacPortsを利用してインストールせよなどと
書いてありますが、homebrew派の僕はどうしたらよいのか?
kcachegrindではなく、qcachegrindというものが用意されているようです。
How to install qcachegrind (kcachegrind) on Mac OSX Snow Leopard
1. qcachegrindとqtのインストール
% brew install qcachegrind qt
qtも必要ならしいので、qcachegrindと一緒にインストールしてみる。
2. Graphvizのインストール確認
% which dot
で、
% /usr/local/bin/dot
という出力結果が出ればGraphvizがインストールされているとの事です。
なければ
でインストールしませう。
この段階で、
一応
% qcachegrind
を実行すると、qcachegrindが開きます。
しかし、プロファイル結果ファイルがないと、何もできません。
他の言語だったらファイルをコンパイルしてプロファイル結果ファイルを生成して…
という流れなのでしょうが、今回はPHPのXDebugを利用します。
まず、XDebugが有効になっているかどうかを設定ファイル(php.ini)確認しましょう。
まあ、ないでしょうから、
でインストールします。なんかphp.iniにこのコードを貼り付けよ、という
メッセージが出てくるので、その通りにします。
こんな感じのコードをphp.iniに貼りつけるべし。
で、Apacheを再起動(sudo apachectl restart)し、phpinfoで確認する。
phpinfo の結果で Xdebug のエントリが追加されれば OK です。
次に、プロファイルが出来るようにphp.iniを設定する。
こちらを参考にしました。
Xdebug: Documentation
xdebug.profiler_enable=1
xdebug.profiler_enable_trigger=1
xdebug.profiler_output_dir="適当なディレクトリのフルパス"
xdebug.profiler_output_name = callgrind.out.%s
これで、XDebugを利用したプロファイルが可能になるわけですが、
出力用ディレクトリの権限に注意すること。
ただmkdirしただけのディレクトリではプロファイル結果ファイルは生成されないので、
とりあえず777に設定しておきました。
% chmod -R 777 ディレクトリ
一応これでQCachegrindが使えるようにはなったのですが、問題は
使い方がイマイチよく分からないということでしょうか。。