scriptinggdbbreakpoints

gdb scripting: execute commands at selected breakpoint


I'd like to predefine some breakpoints in a gdb script and to invoke some special commands at these breakpoints and afterwards to automatically continue the program execution. So, ideally, I'd like to have a gdb script like the following:

b someFunction
...
if breakpoint from above reached do:
  print var1
  call someOtherFunction
  continue
done

Additionally an unfortunate fact is, that I can't rely on the python interface for using breakpoints, as the gdb version at the server I currently work at is too old!


Solution

  • You should take a look at the commands command, which enables you to add a series of GDB commands (i.e. a list of commands) which will be executed when the breakpoint is hit. See the breakpoint command list section of the GDB manual.

    For example:

    break someFunction
    commands
    print var1
    end
    

    When the breakpoint on someFunction is hit, GDB will execute the command print var1.