[Haskell-cafe] Upgrading GHC 7.6.3 global packages to latest versions
Albert Y. C. Lai
trebla at vex.net
Tue Jul 2 21:57:47 CEST 2013
On 13-06-28 04:06 AM, Rouan van Dalen wrote:
> Now when I try to install the latest version of the [time] package, I have 2
> time packages, 1 in the global package db (the older version), and 1 in
> the user package db
> (the newer version).
> Now I would like subsequent installed packages to always use the latest
> version of the [time]
> package. But if i try to install the [plugins] package, cabal says:
You're trying to use plugins. That means you're also trying to use the
GHC API (because plugins uses it). Then you have 0 options.
The GHC API manifests as a package, called "ghc" again. It comes with
GHC, and it is built againt whatever instances of array, bytestring,
containers, time, template-haskell, etc etc that also come with GHC. It
will not work with any array, bytestring, containers, time,
template-haskell, etc etc that you build later. Definitely not different
versions, and highly likely not even same version. It is sensitive to
the exact build. Look at the output of
ghc-pkg field ghc depends
You see versions and hashes. You have to match versions and hashes, both
of them. It accepts no substitute.
More generally, it is confusing for cabal non-pros to allow two versions
to co-exist. Oh, the pros keep saying it's fine, but that's because they
are pros, they aren't confused. To determine whether you are a pro, read my
If it contains some information new to you, you are not a pro.
More information about the Haskell-Cafe