4

KDbg を使い始めたばかりで、質問に対する答えを見つけるのに苦労しています。KDbg でファイルを開きます (アセンブリで記述された実行可能ファイルを開きました)。ポップアップが表示されます。

GDB: /home/myputer/Desktop/ASMdirectory/chapter5/eatsyscall/eatsyscall からのシンボルの読み取り...完了。

デバッガーでプログラムを実行し、ブレークポイントなどを追加するオプションを取得するにはどうすればよいですか。ボタンをクリックしてプログラムを実行したり、ブレークポイントを追加したりすることはできません。ここに問題はありますか? 手順がありませんか?前もって感謝します。ところで、私はアセンブラに Linux(Ubuntu) と NASM を使用しています。

4

1 に答える 1

1

実行しているソフトウェアのバージョンは何ですか?

たとえば、Ubuntu 12.04、kdbg 2.5.0 (KDE 開発プラットフォーム 4.8.5)、gdb 7.4-2012.04、nasm 2.09.10 を実行しています。

あなたはダンテマンの本を使っていますよね?GDBがシンボルを読み取ろうとすると、「シンボルファイルにコードセクションが見つかりません」ではなく「完了」と報告されるため、に変更SECTION .txtしたと思いますSECTION .text

kdbg の代わりに gdb を直接使用することをお勧めします。kdbg に逆アセンブルされたコードまたはリストを表示させる方法 (または gdb コマンドを直接送信する方法) がわかりません。できる最善のことは次のとおりだと思います。

  1. kdbg を実行する
  2. 実行可能ファイルを開く
  3. [ブレークポイント] タブに切り替えます
  4. 編集ボックスに「_start」(表示されている唯一の記号だと思います) を入力します。
  5. 「ブレークポイントの追加」ボタンを押します
  6. 「実行」ボタンを押します
  7. 実行は _start で壊れているはずです
  8. [レジスタ] タブに切り替えます
  9. [命令によるステップ イン] ボタンをクリックして、コードをウォークスルーします。

Kdbg は実行を再開できないようです。プログラムを強制終了してから再度実行する必要があるようです。

于 2013-06-27T16:09:44.233 に答える