making GHC from source

Duncan Coutts duncan.coutts at
Mon May 19 14:31:00 EDT 2008

On Mon, 2008-05-19 at 16:37 +0400, Serge D. Mechveliani wrote:
> People,
> I need to install ghc-6.8.2 from source.
> As I recall, this needs  Happy and Alex. Right?

No, not if you are using a released ghc tarball because they include the
output of happy and alex. You only need happy and alex if you want to
build the development version of ghc from darcs.

> Among Happy versions, it is visible only a couple latest ones, and to install
> any of them, one needs  Cabal.
> Installing Cabal is as follows:   
>   make install
>   mkdir -p dist/tmp
>   ghc --make -cpp -Wall -DCABAL_VERSION=1,2,3,0 -i. -odir dist/tmp 
>                                            -hidir dist/tmp Setup.lhs -o setup
>   make: ghc: command not found.
> We have a `make' loop:    ghc --> Happy --> Cabal --> ghc

Remember that you always need an existing ghc binary to be able to build
ghc from source.

> Old Happy was good: it did not require GHC -- as I recall. Do I mistake?

Happy is written in Haskell and typically people build it from source
using GHC.

> Now I have to install GHC from binary, and it will report of library version mismatch ...
> and so on.
> Do not you think that, generally, something is going wrong here?

You'll need at least a ghc binary to bootstrap with.

See the ghc building guide:


More information about the Glasgow-haskell-users mailing list