gdb操作
LLVMのソースを、授業で読むのに使うので。手加減なく初心者なので勉強。
ブレークポイントを設定したプログラムを動かす。
ブレークポイントの設定。走らせたときにこの関数で止めるよ、っっていう指定。行数、ファイル名などなど。
次を表示。次が関数なら、関数を読み飛ばす。
return 文でやるとひとつ飛ばされてしまう。
次を表示。次が関数なら、関数に入る。
今いる場所のコードを見せる。
-gオプションでコンパイルしないと見られない。
変数の表示。中に何が入っているのか。
今いる階層。スタックを表示する。#0が今いる階層。一番下が開始する階層。一番下はmain関数であることがほとんど。
関数スタックの上に上がる。
関数スタックの下に下がる。
ブレークポイントの情報を見る。
走らせているプログラムを、次のブレークポイントまですすめる。
ブレークポイントを削除する。
いまいる関数を終わらせる。
一度コマンドを入れたら、そのあとはエンターキーを押すだけで同じ操作を実行してくれるらしい。
gdb起動
gdb --args プログラム --引数
gdb操作
run/r
ブレークポイントを設定したプログラムを動かす。
break/b ファイル名or行数
ブレークポイントの設定。走らせたときにこの関数で止めるよ、っっていう指定。行数、ファイル名などなど。
next/n
次を表示。次が関数なら、関数を読み飛ばす。
return 文でやるとひとつ飛ばされてしまう。
step/s
次を表示。次が関数なら、関数に入る。
list/l
今いる場所のコードを見せる。
-gオプションでコンパイルしないと見られない。
print/p 変数名
変数の表示。中に何が入っているのか。
where
今いる階層。スタックを表示する。#0が今いる階層。一番下が開始する階層。一番下はmain関数であることがほとんど。
up
関数スタックの上に上がる。
down
関数スタックの下に下がる。
info b
ブレークポイントの情報を見る。
continue/c
走らせているプログラムを、次のブレークポイントまですすめる。
delete/d
ブレークポイントを削除する。
finish/fin
いまいる関数を終わらせる。
一度コマンドを入れたら、そのあとはエンターキーを押すだけで同じ操作を実行してくれるらしい。
コメント
コメントを投稿