Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[dsdp-dd-dev] Source lookup and remote debugging launch sequence

Title: Source lookup and remote debugging launch sequence

Hi there,
I've started the investigation about breakpoints and source lookup and I have found that the command sequence
below is maybe a good approach for remote debugging. What do you think?

This is the output from a manual GDB session:
==================================
C:\dev\workspace\GDB-test>"c:\Program\CodeSourcery\SourceryG++\bin\arm-none-linux-gnueabi-gdb.exe" --interpreter=mi
~"GNU gdb (CodeSourcery Sourcery G++ Lite 2007q3-51) 6.6.50.20070821-cvs\n"
~"Copyright (C) 2007 Free Software Foundation, Inc.\n"
~"GDB is free software, covered by the GNU General Public License, and you are\n"
~"welcome to change it and/or distribute copies of it under certain conditions.\n"
~"Type \"show copying\" to see the conditions.\n"
~"There is absolutely no warranty for GDB.  Type \"show warranty\" for details.\n"
~"This GDB was configured as \"--host=i686-mingw32 --target=arm-none-linux-gnueabi\".\n"
~"For bug reporting instructions, please see:\n"
~"<https://support.codesourcery.com/GNUToolchain/>.\n"
~"\n"
(gdb)
-file-exec-and-symbols C:\\dev\\workspace\\GDB-test\\Threads
^done
(gdb)
-gdb-set sysroot C:\Program\CodeSourcery\SourceryG++\arm-none-linux-gnueabi\libc
^done
(gdb)
-target-select remote 192.168.0.10:12345
^connected,thread-id="0",frame={addr="0x400007c0",func="_start",args=[],from="C:\\Program\\CodeSourcery\\SourceryG++\\arm-none-linux-gnueabi\\libc/lib/ld-linux.so.3"}

(gdb)
-break-insert C:\dev\workspace\GDB-test\Threads.cpp:24
^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x00008a84",func="printMsg(void*)",file="Threads.cpp",fullname="C:\\dev\\workspace\\GDB-test/Threads.cpp",line="24",times="0"}

(gdb)
==================================

Notice the number of backslashes needed to get things to work for "-file-exec-and-symbols" command.

What I think is important regarding breakpoints:
  1. It looks loke the gdb MI interface for CodeSourcery accepts inserting breakpoints using backslash
  2. There's a file and a fullname attribute in the response for the -break-insert command, possibly useful for source lookup.

I'll go on debugging the eclipse frameworks to see where the breakpoint insertion fails in the code, but first patching the current launch to something like above.

Cheers,
Tobias


Back to the top