From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1667 invoked by alias); 16 Mar 2002 17:33:35 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 1606 invoked from network); 16 Mar 2002 17:33:33 -0000 Received: from unknown (HELO nevyn.them.org) (128.2.145.6) by sources.redhat.com with SMTP; 16 Mar 2002 17:33:33 -0000 Received: from drow by nevyn.them.org with local (Exim 3.35 #1 (Debian)) id 16mI3v-0006ys-00; Sat, 16 Mar 2002 12:33:47 -0500 Date: Sat, 16 Mar 2002 09:33:00 -0000 From: Daniel Jacobowitz To: =?unknown-8bit?B?QuRuZy1oYSCg?= Cc: gdb@sources.redhat.com Subject: Re: Map offsets Message-ID: <20020316123347.B26767@nevyn.them.org> Mail-Followup-To: =?unknown-8bit?B?QuRuZy1oYSCg?= , gdb@sources.redhat.com References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.3.23i X-SW-Source: 2002-03/txt/msg00152.txt.bz2 On Sat, Mar 16, 2002 at 03:47:26PM +0000, B?ng-ha ? wrote: > OK, now you made me curious... I've been thinking a long time about reading > about ELF, but please tell me what that number indicates, would you? > I'm using gdb-5.0rh-5 VMA, or virtual memory address. I would recommend a good ELF reference, but I don't know of any. > > ----Original Message Follows---- > From: Daniel Jacobowitz > To: B?ng-ha ? > CC: gdb@sources.redhat.com > Subject: Re: Map offsets > Date: Sat, 9 Mar 2002 11:09:53 -0500 > User-Agent: Mutt/1.3.23i > > 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 > > > _________________________________________________________________ > Chat with friends online, try MSN Messenger: http://messenger.msn.com > > -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer