The driver script (ghc.prl) as supplied with the various 2.02 bundles
fails to tell the linker about which symbols the RTS need from the
prelude libraries, so that these will always be included (the archive
for the prelude libraries appear before the archive for the run-time
system on the linker command line). This problem is only going to
strike in Concurrent code that doesn't make use of lists, Ints, Chars
or the IO/ST monad - i.e., not many, but the distributed driver script
is broken nonetheless.

Two ways to recover from this impasse, either add -lHSrts_{mc,mr} (mc
for -concurrent code, mr for -prof -concurrent) to the cmd. line when
linking or patch the driver script with the patch available from

 ftp://ftp.dcs.gla.ac.uk/pub/haskell/glasgow/working/ghc-2.02-ghc.prl-patch

applying it (patch -p < ghc-2.02-ghc.prl-patch ) to the driver script in
fptools/bin/<your platform>/ghc-2.02/, and then re-run `make in-place' or
re-install. Patching the driver is the preferred solution.

Thanks to Stefan Westmeier <[EMAIL PROTECTED]> for reporting
the problem.

--Sigbjorn

Reply via email to