#72: Broken profiling libraries in OS X package ---------------------------+------------------------------------------------ Reporter: atomb | Owner: gregorycollins Type: defect | Status: new Priority: major | Milestone: Component: OSX installer | Keywords: ---------------------------+------------------------------------------------ After a fresh install of 2009.2.0.1-beta1 package for OS X on a 1.5.7 system (Leopard), I tried to use cabal-install to install several packages with profiling information. The packages depending on libraries included in the platform, but not included with GHC, failed:
{{{ $ ghc-pkg list /Library/Frameworks/GHC.framework/Versions/610/usr/lib/ghc-6.10.3/./package.conf: Cabal-1.6.0.3, GLUT-2.1.1.2, HTTP-4000.0.6, HUnit-1.2.0.3, OpenGL-2.2.1.1, QuickCheck-1.2.0.0, array-0.2.0.0, base-3.0.3.1, base-4.1.0.0, bytestring-0.9.1.4, cgi-3001.1.7.1, containers-0.2.0.1, directory-1.0.0.3, (dph-base-0.3), (dph-par-0.3), (dph-prim-interface-0.3), (dph-prim-par-0.3), (dph-prim-seq-0.3), (dph-seq-0.3), editline-0.2.1.0, extensible-exceptions-0.1.1.0, fgl-5.4.2.2, filepath-1.1.0.2, (ghc-6.10.3), ghc-prim-0.1.0.0, haddock-2.4.2, haskell-src-1.0.1.3, haskell98-1.0.1.0, hpc-0.5.0.3, html-1.0.1.2, integer-0.1.0.1, mtl-1.1.0.2, network-2.2.1, network-2.2.1.1, old-locale-1.0.0.1, old-time-1.0.0.2, packedstring-0.1.0.1, parallel-1.1.0.1, parsec-2.1.0.1, pretty-1.0.1.0, process-1.0.1.1, random-1.0.0.1, regex-base-0.72.0.2, regex-compat-0.71.0.1, regex-posix-0.72.0.3, rts-1.0, stm-2.1.1.2, syb-0.1.0.1, template-haskell-2.3.0.1, time-1.1.2.4, time-1.1.3, unix-2.3.2.0, xhtml-3000.2.0.1, zlib-0.5.0.0 /Users/atomb/.ghc/i386-darwin-6.10.3/package.conf: $ cabal install -p lazysmallcheck Resolving dependencies... Downloading lazysmallcheck-0.3... Configuring lazysmallcheck-0.3... Preprocessing library lazysmallcheck-0.3... Building lazysmallcheck-0.3... [1 of 2] Compiling Test.LazySmallCheck.Generic ( Test/LazySmallCheck/Generic.hs, dist/build/Test/LazySmallCheck/Generic.o ) [2 of 2] Compiling Test.LazySmallCheck ( Test/LazySmallCheck.hs, dist/build/Test/LazySmallCheck.o ) [1 of 2] Compiling Test.LazySmallCheck.Generic ( Test/LazySmallCheck/Generic.hs, dist/build/Test/LazySmallCheck/Generic.p_o ) [2 of 2] Compiling Test.LazySmallCheck ( Test/LazySmallCheck.hs, dist/build/Test/LazySmallCheck.p_o ) ar: creating archive dist/build/libHSlazysmallcheck-0.3.a ar: creating archive dist/build/libHSlazysmallcheck-0.3_p.a Installing library in /Users/atomb/.cabal/lib/lazysmallcheck-0.3/ghc-6.10.3 Registering lazysmallcheck-0.3... Reading package info from "dist/installed-pkg-config" ... done. Writing new package config file... done. $ cinstall harpy Resolving dependencies... Downloading harpy-0.4.1... Configuring harpy-0.4.1... Preprocessing library harpy-0.4.1... Building harpy-0.4.1... [1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o ) [2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o ) [3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o ) Loading package ghc-prim ... linking ... done. Loading package integer ... linking ... done. Loading package base ... linking ... done. Loading package syb ... linking ... done. Loading package array-0.2.0.0 ... linking ... done. Loading package containers-0.2.0.1 ... linking ... done. Loading package packedstring-0.1.0.1 ... linking ... done. Loading package pretty-1.0.1.0 ... linking ... done. Loading package template-haskell ... linking ... done. Loading package parsec-2.1.0.1 ... linking ... done. Loading package mtl-1.1.0.2 ... linking ... done. Loading package base-3.0.3.1 ... linking ... done. [4 of 7] Compiling Harpy.X86CodeGen ( Harpy/X86CodeGen.hs, dist/build/Harpy/X86CodeGen.o ) [5 of 7] Compiling Harpy.X86Assembler ( Harpy/X86Assembler.hs, dist/build/Harpy/X86Assembler.o ) [6 of 7] Compiling Harpy.X86CGCombinators ( Harpy/X86CGCombinators.hs, dist/build/Harpy/X86CGCombinators.o ) [7 of 7] Compiling Harpy ( Harpy.hs, dist/build/Harpy.o ) Harpy/CodeGenMonad.hs:91:7: Could not find module `Control.Monad.Trans': Perhaps you haven't installed the profiling libraries for package `mtl-1.1.0.2'? Use -v to see a list of the files searched for. cabal: Error: some packages failed to install: harpy-0.4.1 failed during the building phase. The exception was: exit: ExitFailure 1 }}} The dependencies of lazysmallcheck are all included in the GHC installer package. Some of the dependencies of harpy, however, are in the platform installer package. It appears that the packages included as part of the GHC installer package have good profiling information, while the packages included in the platform installer package do not. If I reinstall mtl and parsec (harpy's other platform dependency) as user packages, with profiling information, then harpy builds correctly. The strange thing is, there '''are''' profiling libraries for mtl and parsec included in the platform. They just don't seem to be usable? {{{ $ ls -l /Library/Frameworks/GHC.framework/Versions/610/usr/lib/ghc-6.10.3/mtl-1.1.0.2/ total 2432 drwxrwxr-x 3 root admin 102 May 8 09:45 Control -rw-rw-r-- 1 root admin 322904 May 8 09:45 HSmtl-1.1.0.2.o -rw-rw-r-- 1 root admin 844576 May 8 09:45 libHSmtl-1.1.0.2.a -rw-rw-r-- 1 root admin 1316304 May 8 09:45 libHSmtl-1.1.0.2_p.a }}} -- Ticket URL: <http://trac.haskell.org/haskell-platform/ticket/72> haskell-platform <http://trac.haskell.org/haskell-platform> The Haskell Platform: a comprehensive and robust collection of Haskell libraries _______________________________________________ Haskell-platform mailing list Haskell-platform@projects.haskell.org http://projects.haskell.org/cgi-bin/mailman/listinfo/haskell-platform