Failure compiling ghc-mtl with ghc-7.8.{2,3}
Edward Z. Yang
ezyang at mit.edu
Sun Jul 20 18:36:26 UTC 2014
It looks like you will have to install old versions of mtl/exceptions
which work on transformers-0.3.0.0, although undoubtedly the real
problem is that GHC should update what version of transformers it
is distributing.
Edawrd
Excerpts from i hamsa's message of 2014-07-20 19:25:36 +0100:
> I think I found the problem.
>
> package ghc-7.8.3 requires transformers-0.3.0.0
> package mtl-2.2.1 requires transformers-0.4.1.0
> package exceptions-0.6.1 requires transformers-0.4.1.0
>
> I wonder how is this ever supposed to work :(
>
> On Sun, Jul 20, 2014 at 9:01 PM, Edward Z. Yang <ezyang at mit.edu> wrote:
> > The last time I saw this error, it was because the package database
> > was messed up (there was an instance of MonadIO in scope, but it
> > was for the wrong package.) However, I don't know what the source
> > of the problem is here.
> >
> > Edward
> >
> > Excerpts from i hamsa's message of 2014-07-20 08:26:52 +0100:
> >> I was trying to upgrade to ghc-7.8 the other day, and got this
> >> compilation failure when building ghc-mtl-1.2.1.0 (see the end of the
> >> message).
> >>
> >> I'm using the haskell overlay on Gentoo Linux straight out of the box,
> >> no local cabal installations of anything.
> >>
> >> Now I was told that other people can compile ghc-mtl with 7.8 just
> >> fine, so there must be something broken in my specific configuration.
> >> What would be an effective way to approach the situation?
> >>
> >> In the sources I see that an instance of MonadIO GHC.Ghc does exist. I
> >> don't understand these errors. Are there multiple different MonadIO
> >> classes in different modules?
> >>
> >> Thank you and happy hacking.
> >>
> >> Now the errors:
> >>
> >> Control/Monad/Ghc.hs:42:15:
> >> No instance for (GHC.MonadIO Ghc)
> >> arising from the 'deriving' clause of a data type declaration
> >> Possible fix:
> >> use a standalone 'deriving instance' declaration,
> >> so you can specify the instance context yourself
> >> When deriving the instance for (GHC.ExceptionMonad Ghc)
> >>
> >> Control/Monad/Ghc.hs:46:15:
> >> No instance for (MonadIO GHC.Ghc)
> >> arising from the 'deriving' clause of a data type declaration
> >> Possible fix:
> >> use a standalone 'deriving instance' declaration,
> >> so you can specify the instance context yourself
> >> When deriving the instance for (MonadIO Ghc)
> >>
> >> Control/Monad/Ghc.hs:49:15:
> >> No instance for (GHC.MonadIO Ghc)
> >> arising from the 'deriving' clause of a data type declaration
> >> Possible fix:
> >> use a standalone 'deriving instance' declaration,
> >> so you can specify the instance context yourself
> >> When deriving the instance for (GHC.GhcMonad Ghc)
> >>
>
More information about the Glasgow-haskell-users
mailing list