This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
SIGILL on gdbserver/ARM/uclibc
- From: Harald Schiöberg <harald at net dot t-labs dot tu-berlin dot de>
- To: gdb at sourceware dot org
- Date: Mon, 07 Jan 2008 11:30:42 +0100
- Subject: SIGILL on gdbserver/ARM/uclibc
I know that this issue is on the list every other year, but I found no
working solution for my problem.
I'm currently trying to run gdb/gdbserver on OpenWRT/ARM
(uclibc-0.9.29/gcc-4.1.2, tried gdb 6.3 and 6.7.1,
target is xscale (armv5te), host is ubuntu x86_64,
OpenWRT builds gdb with
gdb_cv_func_sigsetjmp=yes \
$(PKG_BUILD_DIR)/configure \
--prefix=$(TOOLCHAIN_DIR) \
--build=$(GNU_HOST_NAME) \
--host=$(GNU_HOST_NAME) \
--target=$(REAL_GNU_TARGET_NAME) \
$(DISABLE_NLS) \
--without-uiout \
--disable-tui --disable-gdbtk --without-x \
--without-included-gettext \
--enable-threads \
# --disable-gdbmi ## this was commented out for 6.7.1 to compile
I'm getting SIGILL after a breakpoint on the target.
some session-log from 6.7.1:
(gdb) target remote 172.17.2.190:4000
Remote debugging using 172.17.2.190:4000
warning: Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code.
0x400009d0 in ?? ()
(gdb) b main
Note: breakpoint 1 also set at pc 0x8570.
Breakpoint 2 at 0x8570: file hello.c, line 6.
(gdb) c
Continuing.
Program received signal SIGILL, Illegal instruction.
0x00008574 in main () at hello.c:6
6 for (i=0; i< 10; i++)
(gdb) s
Program terminated with signal SIGILL, Illegal instruction.
The program no longer exists.
(gdb) show osabi
The current OS ABI is "auto" (currently "GNU/Linux").
The default OS ABI is "GNU/Linux".
(gdb) set osabi GNU/Linux
(gdb) show osabi
The current OS ABI is "GNU/Linux".
The default OS ABI is "GNU/Linux".
(gdb) target remote 172.17.2.190:4000
Remote debugging using 172.17.2.190:4000
warning: Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code.
0x400009d0 in ?? ()
(gdb) b main
Note: breakpoints 1 and 2 also set at pc 0x8570.
Breakpoint 3 at 0x8570: file hello.c, line 6.
(gdb) c
Continuing.
Program received signal SIGILL, Illegal instruction.
0x00008574 in main () at hello.c:6
6 for (i=0; i< 10; i++)
(gdb) s
breakpoint.c:7845: internal-error: insert_single_step_breakpoint:
Assertion `single_step
_breakpoints[1] == NULL' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) y
--
Harald Schiöberg
Technische Universität Berlin | T-Laboratories | FG INET
www: http://www.net.t-labs.tu-berlin.de
Phone: +49-(0)30-8353-58476 | Fax: +49-(0)391 534 783 47