[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