From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16050 invoked by alias); 2 Jan 2005 17:12:39 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 16006 invoked from network); 2 Jan 2005 17:12:33 -0000 Received: from unknown (HELO wproxy.gmail.com) (64.233.184.207) by sourceware.org with SMTP; 2 Jan 2005 17:12:33 -0000 Received: by wproxy.gmail.com with SMTP id 50so203wri for ; Sun, 02 Jan 2005 09:12:32 -0800 (PST) Received: by 10.54.30.18 with SMTP id d18mr90546wrd; Sun, 02 Jan 2005 09:12:32 -0800 (PST) Received: by 10.54.32.47 with HTTP; Sun, 2 Jan 2005 09:12:32 -0800 (PST) Message-ID: <6251c716050102091232cab7a0@mail.gmail.com> Date: Sun, 02 Jan 2005 17:12:00 -0000 From: Thomas Elam Reply-To: Thomas Elam To: gdb@sources.redhat.com Subject: Re: What are the prescribed ways to extend gdb? Examples? In-Reply-To: <6251c7160501020906198ca7c8@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit References: <6251c71605010208593729d960@mail.gmail.com> <6251c7160501020906198ca7c8@mail.gmail.com> X-SW-Source: 2005-01/txt/msg00011.txt.bz2 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 wrote: > Oops, I should have written `--interpreter', not > `-interface'. > > > On Sun, 2 Jan 2005 22:29:06 +0530, Thomas Elam 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? > > >