{category}

Linux - デバッガ

gdb

ジーディービー(開発ツール

意味 バグ発見・修正ツール


gdbとは?

gdbは、GNU Debuggerの略で、プログラムのバグを見つけて修正するためのツールです。プログラムの実行を一時停止したり、変数の値を確認したり、ステップ実行したりすることができます。主にC、C++、Fortranなどの言語で書かれたプログラムのデバッグに使用されます。

gdbの具体的な使い方

プログラムの基本的なデバッグ

$ gdb ./myprogram
(gdb) break main
(gdb) run
(gdb) next
(gdb) print variable_name
(gdb) continue
(gdb) quit

この例では、gdbを使用してmyprogramをデバッグします。main関数にブレークポイントを設定し、プログラムを実行し、ステップ実行し、変数の値を表示し、実行を続行して終了します。

バックトレースの表示

$ gdb ./myprogram
(gdb) run
Program received signal SIGSEGV, Segmentation fault.
(gdb) backtrace

プログラムがクラッシュした際に、backtraceコマンド(btでも可)を使用して関数呼び出しスタックを表示します。これは問題の原因を特定するのに役立ちます。

ウォッチポイントの設定

$ gdb ./myprogram
(gdb) watch my_variable
(gdb) run

watchコマンドを使用して特定の変数(この例ではmy_variable)の値が変更されたときにプログラムの実行を一時停止するウォッチポイントを設定します。

gdbに関するよくある質問

Q. gdbでブレークポイントを設定?
A. break 関数名 または break ファイル名:行番号 でブレークポイントを設定できます。
Q. gdbでステップ実行するには?
A. next コマンドで次の行へ、step コマンドで関数内部に入ります。
Q. gdbでバックトレースを表示?
A. bt コマンドを使用すると、現在の関数呼び出しスタックを表示できます。
Q. gdbでウォッチポイントを設定?
A. watch 変数名 で変数の値が変更されたときに停止するウォッチポイントを設定できます。

gdbが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Linuxのgdbやgit、gcc、g++、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Linuxを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Linuxはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

git

分散型バージョン管理システム

種類: バージョン管理

gcc

Cコンパイラ

種類: コンパイラ

g++

C++コンパイラ

種類: コンパイラ

file

ファイルの種類を判定

種類: ファイル操作

smartctl

ディスク健康状態チェック

種類: ディスク健康状態