GHC build failures on Mac OS X Leopard: ppc & x86

Sean Leather leather at cs.uu.nl
Sun Feb 17 15:00:31 EST 2008


Hi,

I tried to build GHC "stable" on my two computers, a PowerBook G4 and
a MacBook, both running 10.5.2. This is the first time I've ever
tried, so I'm somewhat clueless about a lot of it. I went with the
basic instructions (./configure; make) with no 'mk/build.mk' and no
configure options other than '--prefix'.

On each system, I ran into a different error, though both point to the
linker, 'ld'. The PowerBook failure looks similar to ticket #1958 [1];
however, it doesn't appear to be building parsec at that point. I
gather that it's building stage1 due to the "-o
stage1/ghc-6.8.2.20080213".

The MacBook build apparently completed stage1 and failed in trying to
build stage2 (i.e. "-o stage2/ghc-inplace").

I have included snippets below from the output of each build. I
thought it might be useful to share and see if these are already known
problems with/without workarounds. Also, I'm willing to help
debug/test if there's anything specific you want me to try. Otherwise,
I'll probably fiddle with the 'mk/build.mk' (as discussed in [1] and
[2]) and/or changing which linker is used.

Additionally, I have a somewhat unrelated question. What's the
different between ghc-stable [3] and ghc-6.8 [4]?

Thanks,
Sean

[1] http://hackage.haskell.org/trac/ghc/ticket/1958
[2] http://hackage.haskell.org/trac/ghc/wiki/Building/Hacking
[3] http://darcs.haskell.org/ghc-stable/
[4] http://darcs.haskell.org/ghc-6.8/


------------------------------------------------
  PPC build output
------------------------------------------------

/usr/local/ghc-6.8.2-ppc-tiger/bin/ghc -o stage1/ghc-6.8.2.20080213
-H16m -O  -istage1/utils  -istage1/basicTypes  -istage1/types
-istage1/hsSyn  -istage1/prelude  -istage1/rename  -istage1/typecheck
-istage1/deSugar  -istage1/coreSyn  -istage1/vectorise
-istage1/specialise  -istage1/simplCore  -istage1/stranal
-istage1/stgSyn  -istage1/simplStg  -istage1/codeGen  -istage1/main
-istage1/profiling  -istage1/parser  -istage1/cprAnalysis
-istage1/ndpFlatten  -istage1/iface  -istage1/cmm  -istage1/nativeGen
-Wall -fno-warn-name-shadowing -fno-warn-orphans -Istage1 -cpp
-fglasgow-exts -fno-generics -Rghc-timing -I. -Iparser -package unix
-ignore-package lang -recomp -Rghc-timing  -H16M '-#include
"cutils.h"' -DUSING_COMPAT -i../compat -ignore-package Cabal -package
directory -package pretty -package containers    -L../compat
-lghccompat -no-link-chk    stage1/basicTypes/BasicTypes.o
stage1/basicTypes/DataCon.o <snip>

collect2: ld terminated with signal 10 [Bus error]

<<ghc: 28298448 bytes, 7 GCs, 507904/774144 avg/max bytes residency (2
samples), 16M in use, 0.01 INIT (0.00 elapsed), 0.12 MUT (19.61
elapsed), 0.06 GC (0.15 elapsed) :ghc>>

make[1]: *** [stage1/ghc-6.8.2.20080213] Error 1
make: *** [stage1] Error 1


------------------------------------------------
  x86 build output
------------------------------------------------

../compiler/stage1/ghc-inplace -no-user-package-conf -cpp
stage2/ghc-inplace.c -o stage2/ghc-inplace

ld: in /Users/leather/Projects/ghc-stable/ghc/libraries/haskell98/dist/build/libHShaskell98-1.0.1.0.a,
archive has no table of contents

collect2: ld returned 1 exit status

make[2]: *** [stage2/ghc-inplace] Error 1
make[1]: *** [stage2] Error 2
make: *** [bootstrap2] Error 2


More information about the Glasgow-haskell-users mailing list