This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: Using gdb with Borland's free compiler?
- From: Christopher Faylor <cgf at redhat dot com>
- To: gdb at sources dot redhat dot com
- Date: Wed, 1 Oct 2003 09:10:15 -0400
- Subject: Re: Using gdb with Borland's free compiler?
- References: <200309282250.h8SMorcf026975@duracef.shout.net> <3F783251.2030009@redhat.com> <20031001000752.GA6807@redhat.com> <20031001055806.GB933@gnat.com>
On Tue, Sep 30, 2003 at 10:58:06PM -0700, Joel Brobecker wrote:
>> So far the basic problem with just using cygwin's gdb seems to be lack
>> of understanding of MS-DOS paths. It should be doable to fix up gdb to
>> understand those better in the cygwin port, if that was the only
>> problem.
>
>This part is actually (almost) easy. By simply defining a few macros
>that do the conversion between DOS and cygwin formats, we managed to
>get a cygwin GDB that talks DOS paths. We never submitted these patches
>for approval because we felt they would never be accepted. After all,
>when you use a cygwin debugger, chances are you prefer to see cygwin
>paths. Maybe we could compromise by using a two-state variable or
>a boolean variable. We would have cygwin paths by default, but changing
>the setting of this variable would allow you to get DOS paths instead?
I have the same policy with gdb that I do with cygwin as far as DOS paths
are concerned. I certainly don't want to make them hard to use but if
there are problems using them, I'm not going to be first in line to
fix the problem.
I thought that someone had actually made some changes to gdb a while ago
to get things working correctly with DOS paths but this isn't the kind
of thing that I routinely check.
>I say it's almost easy because we tested these changes against GNAT,
>which is a migw compiler. We never stress-tested it against a cygwin
>compiler for instance.
>
>The real annoying problem that we have been facing with a cygwin GDB
>is its dependence on the cygwin dll. That makes distribution of GDB
>binaries more challenging, because now we need to distribute this DLL
>too. All is fine when the customer host doesn't use cygwin, but it
>becomes potentially problematic when he does and the DLL versions
>don't match...
And, of course, it requires you to distribute source code for the cygwin
DLL itself. FWIW, newer cygwin DLLs are always guaranteed to work with
older binaries, so it should be just a matter of checking the version
and not installing the older version.
(And, nearly every time I say this, someone says "I'm pretty sure there
was some problem with a newer DLL but I don't remember what it was.")
cgf