bundle exec gdb とやると環境変数が渡って楽
$ bundle exec gdb ruby
gdb> run test.rb
コマンドラインで ruby への引数も渡したいときは --args オプションが使える。 ちなみに man gdb には出てこないが、gdb --help には出てくるオプション。
$ bundle exec gdb --args ruby test.rb
gdb> run
また、こんな .gdbinit を作って食わせておくと、ruby_debug_breakpoint();
関数を呼び出したところで止まって便利
set breakpoint pending on
b ruby_debug_breakpoint
set $_exitcode = -999
run
if $_exitcode != -999
quit
end
$ bundle exec gdb -x .gdbinit --args ruby test.rb
(勝手に run までされる)