[darcs-devel] [darcs #515] current stable doesn't build on Mac OS
10.4
Tom Counsell
tamc2 at cam.ac.uk
Mon Sep 12 16:18:46 PDT 2005
The workaround that worked for me (also ghc 6.4, also OSX 10.4.2) was
to do:
sudo gcc_select 3.3
to revert to the Panther gcc.
To undo this later, do sudo gcc_select 4.0
tom
On 12 Sep 2005, at 13:02, Guillaume wrote:
> Le 10 sept. 2005 à 16:08, Zooko a écrit :
>
> > /usr/bin/ld: Undefined symbols:
> > ___DISCARD__
> > collect2: ld returned 1 exit status
> > make: *** [stringify] Error 1
>
> This is a ghc bug. Where did you get yours?
>
> I just managed to compile a ghc 6.4 without this error. The problem
> is that ghc uses this fake function in one of its Haskell to
> assembly stages as a separator between assembly blocks to prevent
> gcc from merging them together; then it suppresses the calls to
> clean the code. But gcc 4.0 (the one delivered for Tiger) adds
> references that ghc forgets to clean. Thus you end up with a code
> not using the function, but still depending on its presence.
>
> What I did was compiling my ghc with an empty __DISCARD__ function
> in libHSrts (just 'echo "void __DISCARD__() {}" > ghc/rts/
> discard.c ; make; sudo make install' in the ghc root directory); my
> darcs finished compiling half an hour ago, and 'make check' gave no
> error (apart from an failure on pull just because the test script
> expects a "permission denied" and gets a "Permission denied" instead).
>
> What is curious is that your darcs' configure didn't complain on a
> non-working ghc. Could it be that the "Hello world" test in
> configure doesn't trigger the same ghc stages as in the real
> compile stage?
>
> (I just realized I had sent this mail to bugs at darcs.net yesterday,
> which isn't as well broadcast as darcs-devel)
>
> --
> Guillaume
>
> _______________________________________________
> darcs-devel mailing list
> darcs-devel at darcs.net
> http://www.abridgegame.org/cgi-bin/mailman/listinfo/darcs-devel
>
More information about the darcs-devel
mailing list