Failure compiling ghc-mtl with ghc-7.8.{2,3}

i hamsa i.hamsa at gmail.com
Sun Jul 20 18:25:36 UTC 2014


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)
>>



-- 
this is the real i


More information about the Glasgow-haskell-users mailing list