「Hello、World」を出力するだけのソースファイルtestcc.cがあります。以下のようにccでコンパイルします
cc -g -o testcc testcc.c
実行するとうまくいきます。次のコマンドを使用して gdb でデバッグしたいと思います。
gdb testcc
gdb からの出力を確認できます。
GDB はフリー ソフトウェアであり、特定の条件下でそのコピーを配布することを歓迎します。条件を表示するには、「showcopy」と入力します。GDB に対する保証はまったくありません。詳細については、「保証を表示」と入力してください。GDB 4.16 (sparc-sun-solaris2.6)、Copyright 1996 Free Software Foundation, Inc...
しかし、5行目にブレークポイントを設定しようとすると、次のメッセージが表示されました
(gdb) break 5
Breakpoint 1 at 0x10814: file /home/users/xxx/C, line 5.
(gdb)
問題は /home/users/xxx/C が現在の作業ディレクトリであり、ソース ファイルではないことです!
次に、 file:line-number オプションを使用してみます
(gdb) break testcc.c:5
No source file named testcc.c.
そのため、以下のようにファイル名のフルパスを含めます
(gdb) break /home/users/xxx/testcc.c:5
No source file named /home/users/xxx/testcc.c.
私は混乱しています.ファイルはそこにあります.なぜgdbはそれを見つけられないのですか? また、gdb の起動時にソース ファイルを検索するディレクトリを指定しようとします。
gdb -d /home/users/xxx/C testcc
まだうまくいきません、何が問題ですか?