Fork me on GitHub

Contents

About

GeanyGDB is a plugin for Geany which provides integrated debugging support within Geany via the GNU Debugger (GDB).

Geany is a small and lightweight integrated development environment using the GTK2 toolkit.

The GNU Debugger is a source-level debugger for C, C++, Fortran, Modula 2 and Java programs.

It was developed and tested on openSUSE-10.3 with GDB-6.7.50 by Jeff Pohlmeyer. Current maintainer is Dominic Hopf, he develops with current Git versions on current Fedora systems. Other recent versions of GDB will probably work, but operating systems other than Linux-PC will not work, at least not without some considerable hacking.

Current Version

GeanyGDB now is part of the Geany-Plugins project. The current version of Geany-Plugins is 0.20. The last stable release of GeanyGDB is 0.0.2. You are recommended to use the more current versions of GeanyGDB shipped with Geany-Plugins.

Requirements

If you like to compile Geany-Plugins yourself, you will need the GTK (>= 2.8.0) libraries and header files. You will also need its dependency libraries and header files, such as Pango, Glib and ATK. All these files are available at http://www.gtk.org or as package via your distributor.

And obviously, you will need have Geany installed. If you have Geany installed from the sources, you should be ready to go. If you are using a prepared package e.g. from your distribution you probably need to install an additional package, which might be called geany-dev or geany-devel. Please note that in order to compile and use GeanyGDB, you will need Geany 0.16 or later.

Furthermore you need, of course, a C compiler and the Make tool. The GNU versions of these tools are recommended.

And last but not least: GDB.

Installation

Please consider to compile and/or install the Geany-Plugins project, as GeanyGDB now is part of Geany-Plugins.

Documentation

There is no real documentation, but if you hover your mouse over the buttons in the GeanyGDBs sidebar panel in Geany the tooltips should give you some idea of what to do next. There are also a few "rough draft" notes below:

Most of the console output from GDB is sent to the "Compiler" message window in Geany, and you can send standard commands to GDB using the "Console" entry on the debug sidebar. This should be used with caution, since GDB's machine interface and console interface don't always play well together.

Also note that the plugin sets its own internal breakpoint #1 to grab the program's PID on startup, so any user-specified breakpoint numbers begin at #2, and if you manually delete the #1 breakpoint it will likely cause you some problems.

Whenever the target program hits a breakpoint or encounters a segfault etc. it will try to open the appropriate source file and jump to the correct line.

To examine the state of the program's variables, you can click on the "Stack" button in the debug sidebar. Note that the interaction between the plugin and GDB can sometimes be quite slow, so please be patient when waiting for the dialogs to open.

The "Add breakpoint", "Add watchpoint", and "Run to" dialogs will try to suggest some values based on your current position in whatever file you have open in Geany, but if you don't like the choice, just click the "Clear" button and type in whatever you please.

GeanyGDB tries to enable only the buttons that are relevant to the current state, but ocassionally it might end up getting things wrong. If this happens, you should be able to click the "Unload" button and everything will be reset.

If you try to unload the plugin using the plugin manager while it has a program loaded, the plugin manager might appear to hang for a few seconds, while GDB tries to shut down. Again, just be patient, but note that it is much better use the "Unload" button in the debug sidebar before trying to disable the plugin.

Download

Current Version

Current versions of Geany-Plugins can be found at http://plugins.geany.org/geany-plugins/.

You can also check out more current sources of Geany-Plugins from Git, but note that Git checkouts may not run stable.

git clone git://github.com/geany/geany-plugins.git

Older Versions

Geany Version GeanyGDB Version Download
known to work with 0.14 0.0.1 http://plugins.geany.org/geanygdb/geanydebug-0.0.1.tar.gz
0.16 0.0.2 http://plugins.geany.org/geanygdb/geanygdb-0.0.2.tar.gz

Contact

Geanys official homepage is http://geany.org/

mailing list is geany@uvena.de

eMail to dmaphy@googlemail.com

meet us in IRC on channels #geany or #geany-de using chat.freenode.net