[GHC] #11558: Using Cabal 1.22 against GHC 8.0 results in unhelpful errors
GHC
ghc-devs at haskell.org
Mon Feb 8 11:15:53 UTC 2016
#11558: Using Cabal 1.22 against GHC 8.0 results in unhelpful errors
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner:
Type: bug | Status: new
Priority: highest | Milestone: 8.0.1
Component: Package system | Version: 8.0.1-rc1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Incorrect | Unknown/Multiple
warning at compile-time | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D1892
Wiki Page: |
-------------------------------------+-------------------------------------
Description changed by bgamari:
@@ -5,2 +5,2 @@
- isn't met. Namely, we complain about missing interface files for
- dependencies. For instance,
+ isn't met. Namely, we complain about bad interface files for dependencies.
+ For instance,
New description:
GHC 8.0 will require Cabal >1.22 due to a variety of interface changes
(see #10714, Phab:D1780, https://mail.haskell.org/pipermail/ghc-
devs/2016-January/010978.html). Unfortunately things currently blow up
late in compilation with a seemingly unrelated error when this requirement
isn't met. Namely, we complain about bad interface files for dependencies.
For instance,
{{{
Text/Parsec/Prim.hs:85:1: error:
Bad interface file: /root/.cabal/lib/x86_64-linux-
ghc-8.0.0.20160204/mtl-2.2.1-9wMhzcfsAXi7cNtl9n7svO/Control/Monad/Cont/Class.hi
Something is amiss; requested module
mtl-2.2.1 at mtl-2.2.1-1af5dabd2d7abb688f2145aec87badc4:Control.Monad.Cont.Class
differs from name found in the interface file
mtl_9wMhzcfsAXi7cNtl9n7svO:Control.Monad.Cont.Class
}}}
= For users seeing this error =
The solution here is to install `Cabal` 1.23 or later and a `cabal-
install` linking against it. Currently this requires installing `Cabal`
and `cabal-install` from git. This is most easily done using GHC 7.10.
Finally, you need to clear your package database.
This can be done with,
{{{
$ git clone git://github.com/haskell/cabal
$ cd cabal
$ cabal update
$ cabal install Cabal/ cabal-install/
$ rm -R $HOME/.ghc/*-8.0.0*
}}}
--
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11558#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list