Linux辛い
自分用メモ。
gdbを使ってデバッグまたはコアダンプを解析する方法。
下準備
Linuxではコアダンプの出力が無効になっているようなので有効にします。
1 | ulimit -c unlimited |
unlimited出力サイズを無制限にするとのこと。
サイズを制限しなくてはならないような巨大プログラムや貧弱マシンでなければ無制限一択。
デバッグ
簡単。
1 | gdb |
gdbにプログラムのパスを渡し、run で実行するだけです。
ダンプの解析
ulimitでコアダンプを有効化にしていると、カレントディレクトリにダンプファイルが出力されるはず。
これをgdbで解析するには
1 | gdb <ダンプのパス> |
はい、これでダンプを解析できます。
あとは、bt (backtrace)**、info threads**等でゴリゴリ解析してください。
時間ができたら、コマンドをまとめたいです。