GNU gdb 5.0 This GDB was configured as "i586-pc-linux-gnu"...
gdb-5.0 cannot debug a bare dynamic shared object such as ld.so (commonly
seen as /lib/ld-linux.so.2). The symptom is
-----
$ gdb /lib/ld-linux.so.2
GNU gdb 5.0
...
This GDB was configured as "i586-pc-linux-gnu"...
(gdb) run --list /bin/date
Starting program: /lib/ld-linux.so.2 --list /bin/date
warning: Cannot insert breakpoint -1:
Cannot access memory at address 0x19a0
(gdb)
-----
and the debuggee is not running, and cannot be made to run.
Here is one way to allow the debuggee to run:
-----
diff -u -r original/gdb-5.0/gdb/breakpoint.c gdb-5.0/gdb/breakpoint.c
--- original/gdb-5.0/gdb/breakpoint.c Thu Mar 30 18:54:28 2000
+++ gdb-5.0/gdb/breakpoint.c Mon May 29 02:11:45 2000
@@ -830,7 +830,7 @@
{
/* Can't set the breakpoint. */
#if defined (DISABLE_UNSETTABLE_BREAK)
- if (DISABLE_UNSETTABLE_BREAK (b->address))
+ if (b->number < 0 || DISABLE_UNSETTABLE_BREAK (b->address))
{
/* See also: disable_breakpoints_in_shlibs. */
val = 0;
-----
The debuggee now runs:
-----
(gdb) run --list /bin/date
Starting program: /lib/ld-linux.so.2 --list /bin/date
warning: Cannot insert breakpoint -1:
warning: Temporarily disabling shared library breakpoints:
warning: breakpoint #-1
libc.so.6 => /lib/libc.so.6 (0x40005000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x2aaaa000)
-----
--
John Reiser, [EMAIL PROTECTED]