未だにgdbでソースコードを表示しながらデバッグする方法がいまひとつわからない
@babukaru list コマンドでちょいちょいソースコードを確認すればよい。最近の IDE のようにずっと表示させたければ gdb --tui
@orumin :ほほー!:と思ってgdb --tuiの方をやると、"keygen.c:6: Error in sourced command file:
Undefined command: "_Bool". Try "help"."
と言われてしまって困っています _Boolは元々定義されているはずなのだけれど、これを分からせるにはどうすればよいのだろう
@babukaru そもそも gdb にソースコードを引数として渡してない?gdb に渡せるのは 実行ファイル以外は gdb のコマンド列や python で作った extension ぐらいだよ。
@babukaru gcc などでコンパイルするときに -g をつけるとデバッグシンボルが入る(objdump で -g つけたバイナリを逆アセンブルするとニーモニック列の間に C のコードが挟まるような表示してくれる)ので,そのバイナリを渡すだけです
@babukaru そうすると list main.c とかするとデバッグシンボルにあるファイルパスをみてそのパスにあるファイルを表示してくれる。つまりデバッグシンボルを元に辻褄合わせしながら表示してくれるだけ。
@babukaru これは IDE なんかでも結局はそんなもん