From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16678 invoked by alias); 25 Aug 2005 00:07:34 -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 16247 invoked by uid 22791); 25 Aug 2005 00:07:24 -0000 Received: from chfw.preston.net (HELO universe.preston.net) (202.14.89.130) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Thu, 25 Aug 2005 00:07:24 +0000 Received: from norman (norman.preston.net [202.14.10.82]) by universe.preston.net (8.11.6/8.11.6) with ESMTP id j7P07Dw27276; Thu, 25 Aug 2005 10:07:14 +1000 Subject: Re: trouble locating source files through relative paths From: Craig Jeffree To: Bob Rossi Cc: gdb@sources.redhat.com In-Reply-To: <20050824112417.GA30211@white> References: <1124436292.3582.64.camel@norman> <20050819124329.GA18911@white> <1124773410.3749.38.camel@norman> <20050823113138.GA27899@white> <20050823114028.GB27899@white> <1124866437.3749.75.camel@norman> <20050824112417.GA30211@white> Content-Type: text/plain Date: Thu, 25 Aug 2005 00:07:00 -0000 Message-Id: <1124928432.10500.12.camel@norman> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-SW-Source: 2005-08/txt/msg00096.txt.bz2 On Wed, 2005-08-24 at 07:24 -0400, Bob Rossi wrote: > Well, I haven't had enough time to investigate this more, however, I did > find some odd results with the example I came up with. For example, if > I do 'info sources' before the dir command is applied, GDB spits out the > relative path. However, if I do the dir command, and then do 'info > sources', then GDB spits out the absolute path. Both before and after I do the 'dir' command 'info sources' spits out the filename with no path at all. > > Once GDB has the absolute path, if I then do 'list uut.h:1', GDB can > still not find the file. If I do 'list ../include/uut.h:1', > then I get an Internal GDB error. Do you get these same results? When I do 'list GeAttribute.H:1' in my application GDB fails to find the file after trying 'GeAttribute.H' in the directory I specified with 'dir' and my cwd. It also tries '../../../include/General/GeAttribute.H'. I can't say I know where it figures out this relative path from because 'info sources' doesn't mention it, however that path is correct when taken from the location of the binary (the path I gave to 'dir'). If I try 'list ../../../include/General/GeAttribute.H:1' it says: 'No source file named ../../../include/General/GeAttribute.H.' The strace during 'list ../../../include/General/GeAttribute.H:1' indicates that no attempt is made to look for this file. GDB must determine this by looking at the list of source files gathered from the binary. Cheers, Craig.