• 同じ名前のファイルがたくさんあるプロジェクトで、1つのファイルにブレークポイントを設定する方法は?

    質問 ファイルservice.cppの45行目にgdbでブレークポイントを設定したいのですが、可能でしょうか? gdb> break service.cpp:45 問題は、私のアプリケーションには多くのservice.cppファイルがあり、私が興味を持っているものを選ぶことができないことです。 どのようにすれば正しいservice.cppファイルを指定できるのでしょうか?

    2023-09-27 13:51:59
  • GDB の最初のマシンコード命令で停止する

    質問 gdb に実行ファイルをロードした後、最初の命令が実行される前にエントリーポイントでブレークするにはどうしたらよいでしょうか? 私が解析している実行ファイルはマルウェアの一部で、暗号化されています。 break main は全く何もしません。 どのように解決するのですか? GDB 8.1以降では、このための特別なコマンドがあります。 starti . GDBセッションの例

    2023-09-13 11:27:28
  • [解決済み] GDBでスタックフレームを調べるにはどうしたらいいですか?

    質問 今、私はバイナリファイルを分解し、異なるレジスタと何かをチェックアウトするためにGDBを使用しています。スタック上のすべてを調べるための簡単なコマンドはありますか?これは、関数内のすべてに限定することができますか? どのように解決するのですか? 現在のスタックフレームに対して。 情報フレーム フレームに関する一般的な情報 (メモリ内の開始位置など) をリストアップし

    2023-06-23 23:04:15
  • [解決済み] GDBのブレークポイントを、指定された回数だけブレークさせるには?

    質問 ある関数が大量に呼び出され、最終的にセグメンテーションフォールトを起こすことがあります。 しかし、私はこの関数にブレークポイントを設定し、それが呼び出されるたびに停止したくありません。 を設定すればいいと聞いたことがあります。 counter を設定すると、ブレークポイントがヒットするたびにカウンタがデクリメントされ、そのカウンタがトリガされるのは counter = 0

    2023-04-10 14:39:18
  • [解決済み] gdb - パイプ入力(引数ではない)でデバッグする [duplicate]

    質問 この質問はすでにここに回答があります : gdbでstdinを読み込んでパラメータを受け取るプログラムをロードするには? (5つの回答)

    2023-03-12 18:44:51
  • [解決済み] gdbで<value optimized out>は何を意味するのですか?

    質問 (gdb) n 134 a = b = c = 0xdeadbeef + ((uint32_t)length) + initval; (gdb) n (gdb) p a $30 = &lt;value optimized out&gt; (gdb) p b $31 = &lt;value optimized out&gt; (gdb) p c $32 = 3735928563

    2023-02-14 11:15:54
  • [解決済み] gdbでのコアファイルの保存

    質問 以下のようなことは可能でしょうか? 保存/ダンプ は可能ですか?時々、後で解析するためにファイルを保存したいことがあります。 どのように解決するのですか? gdbで'generate-core-file'コマンドを発行してください。 (gdb) help generate-core-file Save a core file with the current state

    2023-01-25 05:58:14
  • [解決済み] GDBで実行ファイルを自動的に実行するには?

    質問 私が欲しいのは gdb とタイプしたかのように、すぐに実行ファイルを実行させたいのです。 と入力したかのように、をすぐに実行させたいのです (動機: "run" と入力するのが嫌いなのです)。 一つの方法は、コマンドをパイプで gdb のようにすることです。 $ echo run | gdb myApp しかし、この方法の問題点は、以下のようにインタラクティブ性を失

    2022-10-24 11:26:32
  • [解決済み] 16進数または10進数で変数を表示する。

    質問 現在、ある変数の値を表示する際に v をGDBで表示した場合( print v ) 整数を取得します。 GDBにこのような整数変数を16進数または2進数で表示させることは可能でしょうか? どのように解決するのですか? 確かにそうです。これらを試してみてください。 # Hexadecimal p/x variable # Binary p/t variable

    2022-09-25 22:19:14
  • [解決済み] gdbのコード付きスプリットビュー

    質問 gdb でプログラムをデバッグしていたところ、どういうわけか今まで見たことも聞いたこともない新機能を発見しました。 これは何なのでしょうか?私は何をしたのでしょうか、もっと具体的に言うと、どうすればこの分割画面モードを再び使えるようになるのでしょうか。 このモードの名前、または使用方法について読むことができる場所がありますか? どのように解決するのですか? それはT

    2022-07-06 10:25:59
  • [解決済み] 対話型デバッグ中に gdb の出力を強調表示したり色付けする方法は?

    質問 ddd、nemiver、emacs、vim、その他のフロントエンドを使うべきだという返答はしないでください。 解決方法は? .gdbinit をいじることができます。 ~/.gdbinit に色を持たせる。マモンの .gdbinit はこちらで入手可能です。 https://github.com/gdbinit/gdbinit こちらもいくらでもいじれる。

    2022-04-14 06:36:39
  • [解決済み】GDBでレジスタの値を表示するには?

    質問 の値を表示するにはどうすればよいですか? %eax と %ebp ? (gdb) p $eax $1 = void 解決方法は? info registers はすべてのレジスタを表示しています。 info registers eax はレジスタだけを表示します。 eax . コマンドは次のように省略することができます。 i r

    2022-04-07 20:51:26
  • [解決済み] Bashスクリプト内でGDBを使用してコマンドライン引数を持つプログラムを実行するにはどうすればよいですか?

    質問 GDBでプログラムを実行する場合、通常、プログラムの引数は run コマンドを使用します。GDBを使用してプログラムを実行し、さらにシェルスクリプト内で引数を与える方法はありますか? 関連する質問で、スクリプトの実行開始後にGDBをプログラムにアタッチすることができると言及した回答を見ました。しかし、その場合、私はプログラムを「待つ」必要があります。 他に方法はないのでしょ

    2022-03-18 14:24:47
  • [解決済み] GDBでメモリ範囲をディスアセンブルする方法は?

    質問 あるプログラムをディスアセンブルして、GDBでシステムコールアセンブリ命令(INT命令だと思います)とハンドラを見ようとしているのですが、そのためにファイルを開いたり閉じたりする小さなプログラム(下記参照)を書きました。 fopenの呼び出しが実行されるまで、GDBで追うことができました。 GDBに "ディスアセンブル 0x..."(呼び出しのアドレス)を伝えようとすると、「指

    2022-03-13 05:09:44
  • [解決済み] GDBで現在の関数からステップアウトする

    質問 Visual Studio を使っている人ならおなじみの シフト + F11 ホットキー つまり、呼び出し元に戻るまで現在の関数を実行し続け、その時点で停止します。 GDBに同等のものはありますか? どのように解決するのですか? を使用することができます。 finish コマンドを使用します。 finish : 選択されたスタックフレームの関数が戻

    2022-03-06 09:27:26
  • [解決済み] GDBで単一のブレークポイントを削除するにはどうすればよいですか?

    質問 でGDBにブレークポイントを追加することができるのですが。 b &lt;filename&gt;:&lt;line no&gt; 特定の場所にある既存のブレークポイントを削除するにはどうすればよいですか? 解決方法は? これらを試してみてください( 参照 ): clear linenum clear filename:linenum

    2022-03-03 16:04:19
  • 関数の暗黙の宣言 この警告問題の原因と解決策

    http://blog.csdn.net/fpmystar/article/details/4168073 ヘッダーの欠落 最近、SDカード用のSEP4020ドライバを改良しているときに、すべての警告を変更すると暗黙の関数宣言の警告エラーが報告され続け、その原因をググってみると、次の2つの状況があることがわかりました。 1 関数がある c ファイルから .o ターゲ

    2022-02-22 05:55:40
  • VScodeでデバッグを行う場合、デバッグを開始できない

    VScodeでデバッグを行う場合、デバッグを開始することができません。プロジェクトシステムから提供された起動オプションの文字列が無効です。MIDebuggerPath"オプションを指定してください。 このエラーに対してプロンプトを表示します。 翻訳すると、miDebuggerPathにエラーが発生したことを意味します。 linuxであれば、公式サイトの通り、以下のように

    2022-02-18 11:53:51
  • シンボルテーブルが読み込まれていません。"file "コマンドを使用してください。

    初めてgdbデバッガを使ったとき、途中でNo symbol table is loaded. 本を読むと、章の最初に-gの問題に注意するよう促されるのですが、それでもこの-gで溝を仕込んでしまうのです。初めてお使いになる方は、この問題にご注意ください &lt;スパン gdb環境に入るための基本的な手順をまとめます。 &lt;スパン 1. まず、gcc -g .c ファイ

    2022-02-12 11:16:36
  • [解決済み] gdbで<value optimized out>とはどういう意味ですか?

    質問 (gdb) n 134 a = b = c = 0xdeadbeef + ((uint32_t)length) + initval; (gdb) n (gdb) p a $30 = &lt;value optimized out&gt; (gdb) p b $31 = &lt;value optimized out&gt; (gdb) p c $32 = 3735928563

    2022-02-07 08:31:49