filepath mangling under Windows?

Sigbjorn Finne sof@galois.com
Tue, 5 Mar 2002 08:28:25 -0800



> > ghc-5.02.2 is not a cygwin application,
> 
> Whilst I was aware that GHC no longer requires Cygwin to run,
> I didn't realise that it actively discourages use under Cygwin.
> This issue arose because a Windows user would like to use `hmake'
> with GHC, and the `hmake' installation currently requires Cygwin.
> Is there really no possibility of using GHC in the Cygwin environment?
> 

Don't know where you get this "actively discouraging" bit from.

You make it sound as if it isn't possible, which certainly isn't the
case - you just have to keep in mind that using filepaths that only
makes sense wrt. the Cygwin mount table is not a Good Idea,
i.e., stuff like /cygdrive/d/foo. (Have a look at the 'cygpath' utility,
btw).

If you're really that gung-ho about cygwin, you could always compile
up GHC using the cygwin toolchain.

> > 
> > Internally, the compiler will canonicalise paths to
> > 'platform-native' formats before passing them to
> > external tools, which is why you see the slashes
> > reversed.
> 
> As far as I understand the Windows filesystem (which I admit is not
> very far at all), \d\foo is not a canonical pathname, so why is GHC
> generating it?

Because you said /d/foo , which it translated to \d\foo before
feeding ut to 'as' (canonical == canonical slashes), which is another
non-cygwin application (i.e., we include cygwin-free versions of
gcc, as and ld with the ghc installer). 

--sigbjorn