This is the mail archive of the mailing list for the GDB project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

What are the prescribed ways to extend gdb? Examples?

What are the currently prescribed ways to extend
gdb?  I am interested in adding to gdb: (1) a full
scripting language (not tcl) or (2) a new GUI front-end.
These additions could use the same or different
methods of extending gdb.  I *might* want to link my
code in with gdb.  I much prefer a machine-oriented
interface to a human-oriented one.

I have found the following references about extending gdb:

[1] Section 4.2 of the `GDB Internals' document,
`UI-Independent Output--the ui_out Function':

[2] Section 24 of the `Debugging with GDB'
document, `The GDB/MI Interface':
This is also described in the part of GDB's info page
related to the `-interface' option.

[3] Section A of the `GDB Internals' document, `GDB
Currently available observers':

It looks like [2] is the way to go for people
who are not maintainers of gdb.

Examples?  I've found Insight, but I think it links
into gdb and is apparently hard to maintain for that
reason.  As far as I know, most or all of the front-
ends to gdb open gdb as a separate process and
parse its human-oriented output, which is not
ideal, with the exception of an interface written by
Moses Dejong.  He describes his scripting interface
to gdb in this paper:
Near the end of the paper, he tells where the
Tcl source code for the interface can be found:
It uses version 1 of GDB's MI (machine-oriented)
interface.  I've tried this Tcl interface with
the Debian package gdb-6.3-5 .  It seems to work,
but I have to work with it some more, since I don't
remember much Tcl.

Any advice for me?

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]