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]

Map offsets


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?

Thanks in advance
Fredrik Tolf


_________________________________________________________________
Join the world’s largest e-mail service with MSN Hotmail. 
http://www.hotmail.com


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