LoginSignup
2
1

More than 5 years have passed since last update.

おためしgdb

Last updated at Posted at 2019-02-21

基本的に自分用のメモですが、これからgdbを触ってみようと思っている方も参考になるかと思います。

gdbとは

C言語やC++等のプログラムをLinux上でデバッグするデバッガです

準備

デバッグ対象のソースを-g3オプションを付けてビルドする

  • オプションを付けずともgdbは使用可能ですが、付けないとデバッグ情報がほとんどないので付けるのをオススメします

使い方

以下のように準備した実行ファイルをgdbに読み込ませます。
今回は例として実行ファイル名はa.outとしています。

$ gdb a.out

コマンド

run [引数]

  • gdbで読み込んだプログラムを実行します
  • 省略形はr
(gdb) r

quit [引数]

  • gdbを終了します
  • 省略形はq
(gdb) q

break ファイル名:行数

  • 指定のファイル/行にブレイクポイントを設定します
  • 省略形はb
(gdb) b hoge.cpp:10

next

  • ステップ実行をします(関数の中には入りません)
  • 省略形はn
(gdb) n

step

  • ステップ実行をします(関数の中に入ります)
  • 省略形はs
(gdb) s

continue

  • ブレイクポイントなどで停止したプログラムを次のブレイクポイントまで再開します
  • 省略形はc
(gdb) b hoge.cpp:10

print

  • 変数や式などを評価し表示します
  • 省略形はp
(gdb) p hoge

backtrace

  • 直前までの関数呼び出しの履歴を表示します
  • 省略形はbt
(gdb) bt
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1