Hey
Based on an idea by Ulrich Weigand, I've uploaded a new gdb to natty today which adds a gdb-multiarch binary package. It's about 19 MB and once you install it, you will get a new /usr/bin/gdb-multiarch which can debug any target that gdb knows about, including ARM!
So you could debug an ARM "/bin/ls" from a local chroot with qemu-arm-static by running gdb-multiarch and then running: (gdb) file /arm-chroot/bin/ls "/arm-chroot/bin/ls": not in executable format: File format is ambiguous. Matching formats: elf32-littlearm elf32-littlearm-symbian elf32-littlearm-vxworks. Use "set gnutarget format-name" to specify the format. (gdb) set gnutarget elf32-littlearm (gdb) file /arm-chroot/bin/ls
In the chroot, run: qemu-arm-static -g 1234 /bin/ls
and in gdb-multiarch: target remote localhost:1234
and you can now use gdb as usual, setting breakpoints, single-stepping etc.
(It obviously also works with remote debugging of a real, network-connected ARM board; use gdbserver instead of qemu)
Would people be interested in backports?
Cheers,
PS: the package is in NEW and will show up soon in natty; in the mean time, you can get it from my natty PPA: https://launchpad.net/~lool/+archive/ppa/+sourcepub/1446500/+listing-archive...