如何在使用沙盒时让Cabal忽略全局软件包数据库

13
我正在尝试在Ubuntu上使用cabal沙盒安装两个库Elmyesod-platform。问题在于,我正在使用xmonad作为我的窗口管理器。因此,我的包管理器已经安装了一堆Haskell库。在尝试解决依赖关系时,它会使用apt安装的库的版本,从而导致"最大回溯次数超限"的错误。
如何指示Cabal忽略不在Cabal沙箱中的任何软件包,以便它将这些软件包的新版本安装到沙箱中并能够解决依赖项?

你尝试过使用 cabal install --shadow-installed-packages <package> 吗? - Danny Navarro
@DannyNavarro 你应该把这个发表为一个答案。 - WilQu
1个回答

2

可能已经太晚了,但仍然可以尝试...

我不知道如何完全做到这一点,但是您可以尝试强制cabal在sandbox中重新安装这些软件包,它会告诉您这很危险,但由于它在sandbox中,我相信它不会破坏您的系统/配置文件软件包。但这种方法实际上并不切实际。而且您必须指定确切的版本。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接