Jon Mountjoy writes:
> Hello,
>
> Has anybody else had a core dump from ghc-3.02 during a build?
>
> Running Solaris (SunOs 5.6) on a sparc.
>
> I was trying to compile ghc-3.02 with ghc-2.10. I modified the
> config.mk file by adding this:
> GhcCompilerWays= p mc
> (Hopefully convincing it to build ghc with profiling and concurrency)
>
Just to make sure I don't misunderstand - you want to build the
contents of ghc/compiler/ in profiled and concurrent form, and not
just the prelude libraries?
> make boot succeeded nicely. make all did a lot of work and then died
> with a core dump
>
> **********************************************************************
> ===fptools== Recursively making `all' in std exts posix misc concurrent ...
> PWD = /home/jon/FunctionalLanguages/GHC-3.02/fptools/ghc/lib
> ------------------------------------------------------------------------
> ------------------------------------------------------------------------
> ==fptools== gmake all --no-print-directory -r -- EXTRA_HC_OPTS=-H30m EXTRA_HC_OP
> TS=-H30m EXTRA_HC_OPTS=-H30m EXTRA_HC_OPTS=-H30m;
> in /home/jon/FunctionalLanguages/GHC-3.02/fptools/ghc/lib/std
> ------------------------------------------------------------------------
> rm -f PrelBase.o ; if [ ! -d PrelBase ]; then mkdir PrelBase; else find PrelBase
> -name '*.o' -print | xargs rm -f __rm_food ; fi ;
> ../../../ghc/driver/ghc -recomp -cpp -fglasgow-exts -fvia-C -Rghc-timing -O -spl
> it-objs -odir PrelBase -H12m -H30m -c PrelBase.lhs -o PrelBase.o -osuf o
> ghc: ignoring heap-size-setting option (-H12m)...not the largest seen
> Bus Error
That suggests a bug in the concurrent bits, since the last version of
ghc/compiler/hsc linked would have been the concurrent version.
I'm afraid a non-empty setting of GhcCompilerWays doesn't generate
separate hsc binaries for the different ways, instead it silently
overwrites hsc. This is a Makefile bug, which I'll fix. (To do this
yourself, change HS_PROG=hsc to HS_PROG=hsc$(_way) in
ghc/compiler/Makefile.)
Re: bus error, I'll try to reproduce it here.
--Sigbjorn