public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
* GAB side - how to  resolve unresolved symbols
@ 2003-06-03 10:41 Raja Saleru
  2003-06-10 18:38 ` Kevin Buettner
  0 siblings, 1 reply; 2+ messages in thread
From: Raja Saleru @ 2003-06-03 10:41 UTC (permalink / raw)
  To: gdb


Hi all,

I am porting GDB Server on Vendor OS ( micro itron) on sh target.
The Target already has OS and TCP/IP and others.
In host side Linux environment, I have application. These applications uses
OS and TCP/IP service calls.
After compiling the application, I will downloading to target and the
linking takes place at target side.
I am going to reboot the target. In the host side, gdb has symbols, but the
addresses are not fixed.
After linking the application at target side, the linked version contains
the debug info as well as complete image, which is going to run on target.
The image has been created in elf / Dwarf 2 format.

The linking at target takes places at any time dynamically. Whenever linking
happens, the target reboots.
For debugging the application, in host side all the symbols should be
resolved. I don't want to copy the whole liked version of image into host
side.

1.  How can I re-solve the un-resolved symbols at host side by sending only
required
addresses of un-resolved symbols at host ?

2. if we assume that at target side, we have some utility, after linking
this utility will generates a table
which contains the symbols and their addresses. then how can I update at
host side ?

3. I found out some commands in gdb
	symbol	file	-	use symbol table from file
	load	file	-	dynamically link file and add its symbols
	add-sym file addr - 	read additional symbols from file, dynamically
located at address addr

from these commands can I solve my problem ?
what format the above commands expects the file ?

If anybody has more information on these queries please update me.

Thanks in advance.

Regards
raja s


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: GAB side - how to  resolve unresolved symbols
  2003-06-03 10:41 GAB side - how to resolve unresolved symbols Raja Saleru
@ 2003-06-10 18:38 ` Kevin Buettner
  0 siblings, 0 replies; 2+ messages in thread
From: Kevin Buettner @ 2003-06-10 18:38 UTC (permalink / raw)
  To: Raja Saleru, gdb

On Jun 3,  7:41pm, Raja Saleru wrote:

> I am porting GDB Server on Vendor OS ( micro itron) on sh target.
> The Target already has OS and TCP/IP and others.
> In host side Linux environment, I have application. These applications uses
> OS and TCP/IP service calls.
> After compiling the application, I will downloading to target and the
> linking takes place at target side.
> I am going to reboot the target. In the host side, gdb has symbols, but the
> addresses are not fixed.
> After linking the application at target side, the linked version contains
> the debug info as well as complete image, which is going to run on target.
> The image has been created in elf / Dwarf 2 format.
> 
> The linking at target takes places at any time dynamically. Whenever linking
> happens, the target reboots.
> For debugging the application, in host side all the symbols should be
> resolved. I don't want to copy the whole liked version of image into host
> side.
> 
> 1.  How can I re-solve the un-resolved symbols at host side by sending only
> required
> addresses of un-resolved symbols at host ?

It seems to me that you might be able to use the shared library machinery
to do what you want.

> 2. if we assume that at target side, we have some utility, after linking
> this utility will generates a table
> which contains the symbols and their addresses. then how can I update at
> host side ?

I believe some facilities have been recently added to gdb for handling
split executables / symbol tables.  You might want to take a look...

> 3. I found out some commands in gdb
> 	symbol	file	-	use symbol table from file
> 	load	file	-	dynamically link file and add its symbols
> 	add-sym file addr - 	read additional symbols from file, dynamically
> located at address addr
> 
> from these commands can I solve my problem ?
> what format the above commands expects the file ?

The only command that *might* be appropriate for your purposes is
"add-symbol-file".  But that assumes that you know the addresses
at which the various sections have been relocated to on the target.
My guess is that even if it works, it'll prove to be too cumbersome
for real debugging.

I think you should investigate the following two approaches:

 1) Use the shared library machinery in gdb to get gdb to do the
    relocations for you.  It's likely that you'll need to write
    a target specific solib backend (on the gdb side) to do this.
    There will also be some target side work needed.
or

 2) After relocation (linking) on the target, send a symbol file back
    to the host for gdb to load.

My guess is that (2) would be quicker to implement, but that (1) would
be easier for the user.

Kevin

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-06-10 18:38 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-06-03 10:41 GAB side - how to resolve unresolved symbols Raja Saleru
2003-06-10 18:38 ` Kevin Buettner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).