1

プログラムへのプラグインであるgdbを使用してデバッグしようとしています。以前、gdbのdirectoryコマンドが役立つ可能性があることを示す質問を見ました。プラグインのコード内にブレークポイントを設定しようとすると、「名前の付いたソースファイルがありません...」というエラーが表示されるため、役立つと思いました。ディレクトリを使用しても何も起こらなかったようです。ソースパス構造を使用したコマンド。何か案は?ありがとう。

4

1 に答える 1

3

「名前の付いたソースファイルがありません...」

プラグインが実際に下位の(デバッグ中の)プロセスにロードされるまで、GDBはブレークポイントを設定できません。

コマンドを使用(gdb) info sharedして、プラグインがすでにロードされているかどうかを確認します。

そうでない場合は、「遅延」ブレークポイントを設定できます(デフォルト設定がある場合、GDBはそのようなブレークポイントを設定するかどうかを尋ねる必要がありますset confirm on)。

プラグインがすでにロードされてinfo shared出力に表示されている場合は、デバッグ情報を使用してプラグインをビルドしていません。で再構築すると-g、ブレークポイントを設定できるはずです。

于 2012-06-06T23:37:45.507 に答える