From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19306 invoked by alias); 3 Mar 2011 16:19:53 -0000 Received: (qmail 19293 invoked by uid 22791); 3 Mar 2011 16:19:50 -0000 X-SWARE-Spam-Status: No, hits=-1.0 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST,TW_GB X-Spam-Check-By: sourceware.org Received: from mail-qy0-f176.google.com (HELO mail-qy0-f176.google.com) (209.85.216.176) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 03 Mar 2011 16:19:44 +0000 Received: by qyk30 with SMTP id 30so1198281qyk.0 for ; Thu, 03 Mar 2011 08:19:42 -0800 (PST) MIME-Version: 1.0 Received: by 10.229.221.17 with SMTP id ia17mr1148213qcb.6.1299169182208; Thu, 03 Mar 2011 08:19:42 -0800 (PST) Received: by 10.229.89.197 with HTTP; Thu, 3 Mar 2011 08:19:41 -0800 (PST) In-Reply-To: <201103031609.43441.pedro@codesourcery.com> References: <201103031532.19941.pedro@codesourcery.com> <201103031609.43441.pedro@codesourcery.com> Date: Thu, 03 Mar 2011 16:19:00 -0000 Message-ID: Subject: Re: [patch gdb]: Fix some DOS-path related issues in gdb From: Kai Tietz To: Pedro Alves Cc: gdb-patches@sourceware.org, Joel Brobecker , Eli Zaretskii Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2011-03/txt/msg00179.txt.bz2 2011/3/3 Pedro Alves : > On Thursday 03 March 2011 15:41:27, Kai Tietz wrote: >> 2011/3/3 Pedro Alves : >> > On Thursday 03 March 2011 14:58:32, Joel Brobecker wrote: >> >> > I didn't know that the Windows 64bit target can use ELF debug info. >> >> > Can it? =A0With what toolchains? >> >> > >> >> > As for mdebugread.c, I always thought it was MIPS specific. =A0What >> >> > other platforms use it? >> >> >> >> These would still be pertinent in the case of cross debugging, no? >> >> If the files were cross-compiled on Windows, the debug info would >> >> contain file paths that follow the Windows convention... >> > >> > And then if you try to debug that on GNU/Linux, things still >> > won't work, because filename_cmp changes behavior depending on host, >> > not target or context. =A0That's why I believe there should be a clear >> > distinction between what's a source path, and a host path. =A0I think >> > Kai's bfd changes affect host paths, so they're fine. (haven't really >> > checked, but that's what I imagine). =A0For source paths, I'd rather >> > have this patch resurected... >> > >> > =A0 >> > >> > I haven't looked at Kai's patch to see if it affects host >> > paths or source paths. >> > >> > -- >> > Pedro Alves >> > >> >> Well Pedro, >> >> this is exactly the point I described in my reply to Eli. The >> debugging of cross-compiled binaries via systems with different >> filename/path representation was and is still not operating. Here it >> would be necessary to provide host<->creator information for doing a >> mapping. And this isn't handled by this patch. >> But at least this patch takes care that stuff compiled on a host with >> host-compiler using DOS-paths is able to operate correct. And ELF is >> an object-file format and has in principle nothing to do with unix and >> can be used (with loader-support) on any specifc OS. > > It sounds like you didn't follow the url I pointed at? > > -- > Pedro Alves > Yes, sorry. I read it now. Well, this flag sounds on first hand proper, but by rethinking it a bit, it is not working. If you have compiled your application via cross-compiler on unix for a target with a different file-system schema (like windows), and then try to debug it via an native debugger, you will see that filenames and paths won't work at all. This is caused by the fact, that debugging information always are using host's (and not target's) filename schema. So to have here a command-line switch won't solve anything AFAICS. IMHO the only valid approach to solve this is: a) Assume that gbd uses internally always its host-filename-schema (this is my patch about) b) Introduce a mapping of foreign file-systems to host's, which can be setuped by user. Sadly this can't be detected by debugging-information as AFAIK it lacks this information to tell on what host it was build. Regards, Kai --=20 |=A0 (\_/) This is Bunny. Copy and paste | (=3D'.'=3D) Bunny into your signature to help | (")_(") him gain world domination