[haskell-platform] #124: Windows installer messes up directory structure
haskell-platform
haskell-platform at projects.haskell.org
Wed May 5 11:37:11 EDT 2010
#124: Windows installer messes up directory structure
-------------------------------+--------------------------------------------
Reporter: Toxaris | Owner: refold
Type: defect | Status: new
Priority: major | Milestone:
Component: Windows installer | Keywords:
-------------------------------+--------------------------------------------
The Windows installer for the Platform 2010.1.0.0 messes up the directory
structure so that *.h files installed with the extralibs are not found
when installing packages with cabal-install.
The files are searched in {{{$platform\extralibs}}}, but they are
installed in {{{$platform\lib\extralibs}}}.
=== Error Message ===
{{{
> cabal install digest
Resolving dependencies...
Configuring digest-0.0.0.8...
cabal: Missing dependency on a foreign library:
* Missing header file: zlib.h
This problem can usually be solved by installing the system package that
provides this library (you may need the "-dev" version). If the library is
already installed but in a non-standard location then you can use the
flags
--extra-include-dirs= and --extra-lib-dirs= to specify where it is.
cabal: Error: some packages failed to install:
digest-0.0.0.8 failed during the configure step. The exception was:
ExitFailure 1
}}}
=== More Information ===
Note that on Windows, digest depends on zlib, which contains a source
distribution of zlib. So the missing zlib.h has been installed with the
Haskell Platform.
{{{
> where /R c:\Haskell\Platform\2010.1.0.0 zlib.h
c:\Haskell\Platform\2010.1.0.0\lib\extralibs\zlib-0.5.2.0\ghc-6.12.1\include\zlib.h
}}}
However, cabal install passes {{{...\2010.1.0.0\extralibs\...}}} to gcc.
{{{
> cabal install digest -v3
...
("C:\\Haskell\\Platform\\2010.1.0.0\\mingw\\bin\\gcc.exe",["C:\\Users\\rendel\\A
ppData\\Local\\Temp\\1040.c","-o","C:\\Users\\rendel\\AppData\\Local\\Temp\\1040
","-D__GLASGOW_HASKELL__=612","-I.","-IC:\\Haskell\\Platform\\2010.1.0.0\\extral
ibs\\zlib-0.5.2.0\\ghc-6.12.1\\include","-IC:\\Haskell\\Platform\\2010.1.0.0\\by
testring-0.9.1.5\\include","-IC:\\Haskell\\Platform\\2010.1.0.0\\base-4.2.0.0\\i
nclude","-IC:\\Haskell\\Platform\\2010.1.0.0/include","-IC:\\Haskell\\Platform\\
2010.1.0.0/include","-LC:\\Haskell\\Platform\\2010.1.0.0\\extralibs\\zlib-0.5.2.
0\\ghc-6.12.1","-LC:\\Haskell\\Platform\\2010.1.0.0\\bytestring-0.9.1.5","-LC:\\
Haskell\\Platform\\2010.1.0.0\\base-4.2.0.0","-LC:\\Haskell\\Platform\\2010.1.0.
0\\integer-gmp-0.2.0.0","-LC:\\Haskell\\Platform\\2010.1.0.0\\ghc-
prim-0.2.0.0",
"-LC:\\Haskell\\Platform\\2010.1.0.0","-LC:\\Haskell\\Platform\\2010.1.0.0/gcc-l
ib","-LC:\\Haskell\\Platform\\2010.1.0.0"])
C:\Haskell\Platform\2010.1.0.0\mingw\bin\gcc.exe returned ExitFailure 1
with
error message:
C:\Users\rendel\AppData\Local\Temp\1040.c:1:18: zlib.h: No such file or
directory
...
}}}
As a quick hack, I copied the extra libs to the position where cabal
install wants them, which allows me to install digest (and, in turn,
pandoc).
{{{
> cp -R Haskell\Platform\2010.1.0.0\lib\extralibs\
Haskell\Platform\2010.1.0.0\extralibs\
}}}
--
Ticket URL: <http://trac.haskell.org/haskell-platform/ticket/124>
haskell-platform <http://trac.haskell.org/haskell-platform>
The Haskell Platform: a comprehensive and robust collection of Haskell libraries
More information about the Haskell-platform
mailing list