Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* What are the prescribed ways to extend gdb? Examples?
@ 2005-01-02 16:59 Thomas Elam
  2005-01-02 17:06 ` Thomas Elam
  2005-02-08 16:46 ` Andrew Cagney
  0 siblings, 2 replies; 4+ messages in thread
From: Thomas Elam @ 2005-01-02 16:59 UTC (permalink / raw)
  To: gdb

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':
http://sources.redhat.com/gdb/current/onlinedocs/gdbint_4.html#SEC19

[2] Section 24 of the `Debugging with GDB'
document, `The GDB/MI Interface':
http://sources.redhat.com/gdb/current/onlinedocs/gdb_25.html#SEC223
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':
http://sources.redhat.com/gdb/current/onlinedocs/gdbint_19.html#SEC188

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:
http://www.tcl.tk/community/tcl2004/Tcl2003papers/dejong.pdf
Near the end of the paper, he tells where the
Tcl source code for the interface can be found:
http://www.uncounted.org/tcl/gdbmi-0.1.tgz
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?


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: What are the prescribed ways to extend gdb? Examples?
  2005-01-02 16:59 What are the prescribed ways to extend gdb? Examples? Thomas Elam
@ 2005-01-02 17:06 ` Thomas Elam
  2005-01-02 17:12   ` Thomas Elam
  2005-02-08 16:46 ` Andrew Cagney
  1 sibling, 1 reply; 4+ messages in thread
From: Thomas Elam @ 2005-01-02 17:06 UTC (permalink / raw)
  To: gdb

Oops, I should have written `--interpreter', not
`-interface'.


On Sun, 2 Jan 2005 22:29:06 +0530, Thomas Elam <tomelam@gmail.com> wrote:
> 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':
> http://sources.redhat.com/gdb/current/onlinedocs/gdbint_4.html#SEC19
> 
> [2] Section 24 of the `Debugging with GDB'
> document, `The GDB/MI Interface':
> http://sources.redhat.com/gdb/current/onlinedocs/gdb_25.html#SEC223
> 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':
> http://sources.redhat.com/gdb/current/onlinedocs/gdbint_19.html#SEC188
> 
> 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:
> http://www.tcl.tk/community/tcl2004/Tcl2003papers/dejong.pdf
> Near the end of the paper, he tells where the
> Tcl source code for the interface can be found:
> http://www.uncounted.org/tcl/gdbmi-0.1.tgz
> 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?
>


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: What are the prescribed ways to extend gdb? Examples?
  2005-01-02 17:06 ` Thomas Elam
@ 2005-01-02 17:12   ` Thomas Elam
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Elam @ 2005-01-02 17:12 UTC (permalink / raw)
  To: gdb

I forgot to mention smartgdb, a modified version of
GDB.  I don't know much about it yet.


On Sun, 2 Jan 2005 22:36:03 +0530, Thomas Elam <tomelam@gmail.com> wrote:
> Oops, I should have written `--interpreter', not
> `-interface'.
> 
> 
> On Sun, 2 Jan 2005 22:29:06 +0530, Thomas Elam <tomelam@gmail.com> wrote:
> > 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':
> > http://sources.redhat.com/gdb/current/onlinedocs/gdbint_4.html#SEC19
> >
> > [2] Section 24 of the `Debugging with GDB'
> > document, `The GDB/MI Interface':
> > http://sources.redhat.com/gdb/current/onlinedocs/gdb_25.html#SEC223
> > 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':
> > http://sources.redhat.com/gdb/current/onlinedocs/gdbint_19.html#SEC188
> >
> > 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:
> > http://www.tcl.tk/community/tcl2004/Tcl2003papers/dejong.pdf
> > Near the end of the paper, he tells where the
> > Tcl source code for the interface can be found:
> > http://www.uncounted.org/tcl/gdbmi-0.1.tgz
> > 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?
> >
>


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: What are the prescribed ways to extend gdb? Examples?
  2005-01-02 16:59 What are the prescribed ways to extend gdb? Examples? Thomas Elam
  2005-01-02 17:06 ` Thomas Elam
@ 2005-02-08 16:46 ` Andrew Cagney
  1 sibling, 0 replies; 4+ messages in thread
From: Andrew Cagney @ 2005-02-08 16:46 UTC (permalink / raw)
  To: Thomas Elam; +Cc: gdb

Thomas Elam wrote:

Just FYI, your e-mail answers your own question -> the assumptions and 
expectations are all correct.  MI has clear traction amongst the various 
IDE developers (EMACS, Eclipse's CDT).

Andrew


> 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':
> http://sources.redhat.com/gdb/current/onlinedocs/gdbint_4.html#SEC19
> 
> [2] Section 24 of the `Debugging with GDB'
> document, `The GDB/MI Interface':
> http://sources.redhat.com/gdb/current/onlinedocs/gdb_25.html#SEC223
> 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':
> http://sources.redhat.com/gdb/current/onlinedocs/gdbint_19.html#SEC188
> 
> 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:
> http://www.tcl.tk/community/tcl2004/Tcl2003papers/dejong.pdf
> Near the end of the paper, he tells where the
> Tcl source code for the interface can be found:
> http://www.uncounted.org/tcl/gdbmi-0.1.tgz
> 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?
> 


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2005-02-08 16:42 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-01-02 16:59 What are the prescribed ways to extend gdb? Examples? Thomas Elam
2005-01-02 17:06 ` Thomas Elam
2005-01-02 17:12   ` Thomas Elam
2005-02-08 16:46 ` Andrew Cagney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox