Justin Bailey | 27 Sep 20:44

Cabal 1.4.0.2 won't configure on Vista

As I posted in ticket #360
(http://hackage.haskell.org/trac/hackage/ticket/360), the latest Cabal
on hackage won't configure on Vista. Using GHC 6.8.3, when I run the
"configure" command, I get this error:

"During interactive linking, GHCi couldn't find the following symbol:

SHGetFolderPathA <at> 20

This may be due to you not asking GHCi to load extra object files,
archives or DLLs needed by your current session. Restart GHCi,
specifying the missing library using the -L/path/to/object/dir and
-lmissinglibname flags, or simply by naming the relevant files on the
GHCi command line"

Any ideas?

Justin
Duncan Coutts | 27 Sep 23:09
Gravatar

Re: Cabal 1.4.0.2 won't configure on Vista

On Sat, 2008-09-27 at 11:46 -0700, Justin Bailey wrote:
> As I posted in ticket #360
> (http://hackage.haskell.org/trac/hackage/ticket/360), the latest Cabal
> on hackage won't configure on Vista. Using GHC 6.8.3, when I run the
> "configure" command, I get this error:
> 
> "During interactive linking, GHCi couldn't find the following symbol:
> 
> SHGetFolderPathA <at> 20

> Any ideas?

The README file in the Cabal-1.4.0.2 tarball suggests:

    ghc --make Setup
    ./Setup configure --user
    ./Setup build
    ./Setup install

The reason it imports SHGetFolderPath is to find the location of the
Program Files directory. Unfortunately that is not provided by either
System.Directory or anything in the Win32 binding package so we have to
directly FFI import that ourselves. Unfortunately ghci does not know to
link in the appropriate dll (and there's no automatic way for us to tell
it) so Cabal will not work in ghci by default. You can either compile it
(because gcc does link in the lib by default) or add something like
-lshell32 when invoking ghci/runghc.

If anyone would like to comment on this issue, please use ticket #325:

(Continue reading)


Gmane