Re: debugging dynamically linked modules

Christian Lynbech (chl@tbit.dk)
Mon, 17 Aug 1998 08:58:57 +0200 (MET DST)

>>>>> "Klaus" == Klaus Schilling <Klaus.Schilling@home.ivm.de> writes:

Klaus> I'm talking about modules that are loaded from within scheme code, like
Klaus> (dynamic-link "libstallman.so"), through the libdl-interface of guile.

Ah, I see. I usually do the following: put a break on main and on
scm_error. In addition to getting me back into gdb when an error
happens, it also allows me to go back whenever I need to, simply by
evaluating `(error)'. Of course any other function will do
(`scm_logand' is also a good choice).

This can be used in the following way: set breakpoints, start guile,
load your module, get back into gdb, put a breakpoint in your module
and either go back to guile with `continue' or restart the process
with `run'. Gdb will remember the library breakpoint.

---------------------------+--------------------------------------------------
Christian Lynbech | Telebit Communications A/S
Fax: +45 8628 8186 | Fabrik 11, DK-8260 Viby J
Phone: +45 8628 8177 + 28 | email: chl@tbit.dk --- URL: http://www.telebit.dk
---------------------------+--------------------------------------------------
Hit the philistines three times over the head with the Elisp reference manual.
- petonic@hal.com (Michael A. Petonic)