This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Map offsets


On Sat, Mar 09, 2002 at 03:52:34PM +0000, B?ng-ha ? wrote:
> Hi!
> 
> I'm sure this is a rather stupid question, but I'll ask it anyway:
> I'm debugging a couple of processes under linux, and I want to load the 
> symbols from glibc. Now, the only way I've managed to figure out as to 
> perform the task of finding the base address of libc if to look at the 
> memory maps in /proc/?/maps, whence I get the base address of libc to be 
> e.g. 0x40020000 (this was for mingetty). So naturally, I do add-symbol-file 
> /lib/libc-2.2.2.so 0x4002000, but as it turns, it should be loaded 
> 0x4003BCB0, i.e. at an offset of 0x1BCB0 from what /proc says. (I got the 
> exact offset from looking at the dynamically linked function tables and 
> comparing the read function to what was acutally loaded, if that would
> somehow matter) Anyway, I guess I could live with this small annoyance, if 
> it wasn't for that other libs wants to be loaded with other offsets. 0x1BCB0 
> 
> didn't work with e.g. libresolv. And, I want to know the cause of this as 
> well, of
> course.
> So could someone tell me how to get the real offset, because I can't imagine 
> 
> that there isn't an error-free way to get the address, right?

objdump -x /lib/libc.so.6:

 10 .text         000e1460  0001d500  0001d500  0001d500  2**4
                  CONTENTS, ALLOC, LOAD, READONLY, CODE

That second number.

This should absolutely not be necessary!  GDB should do it
automatically.  What version of GDB are you using?

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]