> ... but then I ask myself why to use gdb/mi that > returns a more complex output instead of calling directly gdb and > parse the stout to get what I want? Because, over time, normal GDB output is likely to change in a way that will break your parser. In contrast, GDB/MI output shouldn't change in unexpected ways.