I'm trying to install the accelerate library from hackage, but it keeps giving me an error saying that my version of base package (4.15.1.0) is too new. Is there a way to force it to ignore the base package that's installed as a system-wide package, and instead download the correct version of the base package?
I'm using Manjaro Linux, ghc version 9.0.2, and cabal version 3.4.0.0. I can't seem to find any documentation on how to force it to ignore a system package. I've tried searching on https://cabal.readthedocs.io/en/3.6/ , but it doesn't seem to mention it anywhere.
CodePudding user response:
The base
package is always hard-fixed to the compiler version. The only way to switch base
is to switch to a different GHC. That's easier with Stack than it is with Cabal-install – just select a snapshot that has a suitable base
version (lts-18.24
would do), and Stack will automatically install the corresponding compiler.
But it could well be that you can actually use base-4.15
, and just accelerate
has conservative dependency bounds. Try installing it with --allow-newer=base
. If that works, give the maintainers a PR that the version bounds can be relaxed.