odd GHC 6.8.2 compile failure

Isaac Dupree isaacdupree at charter.net
Thu Jan 3 14:36:25 EST 2008


Simon Marlow wrote:
> Isaac Dupree wrote:
>> Simon Marlow wrote:
>>> Isaac Dupree wrote:
>>>> linking the compiled stage2 failed when bootstrapping from 6.6.1, 
>>>> with --prefix=$HOME .
>>>>
>>>> It's odd because I previously had a 6.8.2 (official x86 Linux 
>>>> bin-dist) installed as root (it's gone now), and I still have a 
>>>> bunch of cabal/hackage packages installed in $HOME that were 
>>>> compiled by that 6.8.2 (in addition to a few things installed by 
>>>> `cabal install` in ~/.cabal/).  Do you think that could be confusing 
>>>> the build process, and if it is, is that a bug - and a bug in what?
>>>
>>> It looks like at some point you've updated your sources and 
>>> recompiled without cleaning in stage2, or something similar.  The 
>>> build system doesn't currently notice when libraries have changed and 
>>> stage2 needs to be completely recompiled.
>>
>> It sure looks that way!  But I didn't do that personally; I think 
>> these are all of my steps:
>> [download via Firefox to /Users/me/downloads/ghc-6.8.2-src.tar.bz2]
>> cd /Users/me/programming/cabalz/NotActuallyCabalButMaybeShouldBe
>> aunpack /Users/me/downloads/ghc-6.8.2-src.tar.bz2
>> # this `aunpack` is equivalent to tar -xjf in this case.
>> cd ghc-6.8.2
>> ./configure --prefix=$HOME
>> # ($HOME is /Users/me/HOME , by the way).
>> make
>>
>> Indeed I just reproduced it, newly unpacking that tarball in a new 
>> location, to make sure, and I got the same error.
>>
>>
>> What if GHC suddenly decided to link with the newer versions of the 
>> boot-libraries than come with 6.8.2, the ones that could be found in 
>> $HOME since I installed them there? (or with the _same_ versions that 
>> happened to be compiled with different flags, perhaps?)
> 
> And you get different results if you omit the --prefix=$HOME?  (if so, 
> that's very strange, and I don't have a clue what's wrong, yet)

tested a couple more times:
- it still fails without --prefix=$HOME
- but it succeeds if I `su - east` and have 'east' compile it (without 
using --prefix here either) ('east' being another user on my machine 
other than the user 'me' which I usually use)


Isaac


More information about the Glasgow-haskell-users mailing list