新石器Wiki

近年はシリコン(石)から進化した便利なもので溢れる時代。そんな気になった事や試した事など記す。

ユーザ用ツール

サイト用ツール


devtool:toolchain:gdb:gdb-basic-command


差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
software:toolchain:gdb [2017/08/15 09:55] yokodevtool:toolchain:gdb:gdb-basic-command [2019/10/25 10:58] (現在) – ↷ 移動操作に合わせてリンクを書き換えました。 192.0.99.138
行 1: 行 1:
-GDB +GDB】基本コマンド 
-=== +================== 
-GDBは定番のデバッガ・ソフトである。 +[[devtool:jtag:openocd:start]]は、GDBにとってGDBサーバの役割を果たす。ポート`3333`を使うので、接続するには下記コマンド。
- +
-[[develop/jtag/openocd]]は、GDBにとってGDBサーバの役割を果たす。ポート`3333`を使うので、接続するには下記コマンド。+
  
 ``` ```
行 12: 行 10:
 -------------- --------------
  
-ソース・ファイルの選択とロード+### ソース・ファイルの選択とロード
  
 ^コマンド         ^内容                                                              ^ ^コマンド         ^内容                                                              ^
行 18: 行 16:
 |`load`          |選択したオブジェクトファイルをターゲットにロードする(対応していればフラッシュROMにも書き込む) | |`load`          |選択したオブジェクトファイルをターゲットにロードする(対応していればフラッシュROMにも書き込む) |
  
 +### ブレーク・ポイントの設定や解除
 +
 +^コマンド         ^内容                                                              ^
 +|`break`         |ファイル名と関数名,行番号などでブレーク・ポイントの設定を行う          |
 +|`clear` / `delete` |ブレーク・ポイントの解除を行う                                   |
 +|`disable` / `enable` |ブレーク・ポイントの無効化,有効化を行う                       |
 +|`display`       |プログラムが停止した時に自動的に表示する変数や式を指定する    |
 +
 +### プログラムの実行や停止
 +
 +^コマンド         ^内容                                                              ^
 +|`c(continue)`   |停止しているプログラムを続行する                                     |
 +|`n(next)`       |停止しているプログラムの次の1行を実行する。関数呼び出しを1行として関数には入らない|
 +|`s(step)`       |停止している次の1行を実行する。関数の呼び出しで関数の中に入る           |
 +|`Ctrl-C`        |現在実行中のプログラムを強制ストップする。ブレーク・ポイントに止まった場合などに使用|
 +
 +### プログラムの内容を表示する
 +
 +^コマンド ^引き数    ^内容                                                       ^
 +|`info`  |`break`   |設定したブレーク・ポイントを表示する                          |
 +|`info`  |`registers`|レジスタを表示する                                         |
 +|`info`  |`locals`   |ローカル変数を表示する                                     |
 +|`info`  |`arg`      |関数の先頭で引き数を表示する(関数の先頭にとまったとき)      |
 +|`info`  |`stack`    |スタックを表示する                                         |
 +|`info`  |`frame`    |現在のC関数のフレーム構造を表示する                         |
 +
 +### プログラムを表示する
 +
 +^コマンド         ^内容                                                              ^
 +|`list`          |現在行のまわり10行分を表示する。範囲指定も可能                        |
 +|`disassemble`   |メモリ上のプログラムの逆アセンブル表示を行う                         |
 +|`backtrace`     |関数の呼び出し元をトレースする                                       |
 +
 +### データを表示する
 +
 +^コマンド         ^内容                                                              ^
 +|`print`         |変数やポインタの表示を行う。$をレジスタ名の先頭につけることでレジスタ表示も可能  |
 +|`x`             |メモリ番地の表示を行う                                              |
 +
 +### その他
 +
 +^コマンド         ^内容                                                              ^
 +|`quit`          |GDBを終了する                                                      |
 +|`help`          |トップ・レベルのコマンドの詳細を表示する。`help info`とすることで、個別コマンドの詳細を示す |
  
 参考 参考
行 23: 行 65:
  
 1. 「プロなみJTAGデバックを個人でも! オープンソースOpenOCD入門」CQ出版社 Interface誌 2015年3月号 p96〜p107 1. 「プロなみJTAGデバックを個人でも! オープンソースOpenOCD入門」CQ出版社 Interface誌 2015年3月号 p96〜p107
 +2. [[http://mikilab.doshisha.ac.jp/dia/seminar/2002/pdf/gdb.pdf#search=%2527gdb+%25E5%25AE%259F%25E8%25A1%258C%25E9%2596%258B%25E5%25A7%258B%25E3%2581%2599%25E3%2582%258B+%25E3%2582%25A2%25E3%2583%2589%25E3%2583%25AC%25E3%2582%25B9%2527|第1回 GDB ゼミ]] 
 +3. [[http://www.acha-porute-piipo.com/anything/gdb.html|GDBコマンド]] 
 +4. [[http://inaz2.hatenablog.com/entry/2014/05/03/044943|gdbの使い方のメモ]
devtool/toolchain/gdb/gdb-basic-command.1502758508.txt.gz · 最終更新: 2017/08/15 09:55 by yoko