[yocto] gdb/gdbserver vs. eclipse

Rudolf J Streif rudolf.streif at gmail.com
Sat Sep 5 09:17:48 PDT 2015


> 
> I think I made some progress - see attached image.

Good.

> 
> As you can see I stepped into printf and friends.
> 
> For this to work I needed a few more things:
> 
> 1) directory needs the be the same on host and target
> 
> the executable on the host:
> 
> /home/student/BBBworkspace/HelloBBBAutotooled/src/HelloBBBAutotooled
> 
> the executable on the target:
> 
> /home/student/BBBWorkspace/HelloBBBAutotooled/src/HelloBBBAutotooled
> 
I do not have to do that. As a matter of fact the executable on my target is 
copied to /usr/bin from the Eclipse workspace. See "Remote Absolute File Path" 
in the Debug Configuration.


> 2) .gdbinit
> 
> I copied my gdbinit on the host to
> 
> /home/student/BBBworkspace/HelloBBBAutotooled/.gdbinit
> 

Yes, that's where Eclipse's Debug Configuration expects it if you do not change 
the setting of "GDB Command File" in the Main subtab of the Debugger tab in 
the Debug configuration.

> that's the .gdbinit
> 
> # don't use default libs from x86/Ubuntu:
> set sysroot /opt/adt-target-sysroot/beagle-bone-black-ml
> set solib-absolute-prefix /opt/adt-target-sysroot/beagle-bone-black-ml
> set solib-search-path  /opt/adt-target-sysroot/beagle-bone-black-ml
> # point to the libraries with debug info:
> set debug-file-directory
> /opt/adt-target-sysroot/beagle-bone-black-ml/usr/lib/debug
> # point to the source code:
> set substitute-path /usr/src/debug
> /opt/adt-target-sysroot/beagle-bone-black-ml/usr/src/debug
> set substitute-path /
> /opt/adt-target-sysroot/beagle-bone-black-ml/usr/src/debug
> 

Yes, looks like mine except that my target is a MinnowBoard Max and I 
installed my SDK in a different location.


> 3) Once you enter the debug view you need to go to the gdb console and:
> 
> source /home/student/BBBworkspace/HelloBBBAutotooled/.gdbinit
> 

Strange. I don't have to do that if GDB command file is set to the path in the 
workspace. I would expect that Eclipse passes the .gdbinit from the workspace 
explicitly to GDB. However, I do have

add-auto-load-safe-path .

in my global .gdbinit (~/.gdbinit).

Cheers,
Rudi



More information about the yocto mailing list