Hi!
I tried to recompile the latest ghc (1999/07/31) on a Linux/glibc2.1.1
system (egcs 2.91.66), but there seems to be a problem: the build works, but
the resulting compiler produces executables, that throw core, even with
"main = return ()".
I have a CVS version from 1999/07/10, and this one works. I subsequently
recompiled this version with itself several times, no problem.
Since the old version still compiles (I tried this night), and also Manuel
produced a glibc2.1 version of ghc: did anyone change some parts of the rts
or compiler, that could be touchy to specific glibc versions? Or is the
problem related elsewhere?
I wish, I could have provided more debugging info, but strace's and gdb's
output isn't very helpful at all. How do I enable those IF_DEBUG(...) macros
(or something that helps tracking down the problem)? I tried, but it seems I
overlooked something...
However, I "hello-debugged" the problematic version and traced it to
ghc/rts/Schedule.c:
----
case ThreadEnterGHC:
ret = StgRun((StgFunPtr) stg_enterStackTop);
----
The case statement is reached, but then the segmentation fault happens
somewhere in StgRun() or something it calls (*hmm* I don't regard this info
as very helpful at all, since this is pretty early in the startup
process...)
Cheers,
Michael
--
* Software Engineering is like looking for a black cat in a dark room in
which there is no cat.
* Systems Engineering is like looking for a black cat in a dark room in
which there is no cat and someone yells "I got it!"