使用Cabal沙盒在Hackage上测试一个需要我没有的base版本的软件包

3

我正在阅读这篇文章:

http://devskypers.blogspot.fr/2014/02/logging-flow-activity.html

并且想要尝试。

简单的 cabal install monad-journal 告诉我我有base 4.6.0.1但是monad-journal需要4.5.*。

我希望沙箱可以帮助,但是沙箱似乎只能用于自己的包,而且我也不太明白它是如何管理事务的。我尝试为一个空包制作一个简单的cabal文件,并得到提示:

注意:使用沙箱时,所有包都需要具有一致的依赖项。尝试重新安装/注销有问题的软件包或重新创建沙箱。

有没有简单的方法可以说“在我的本地沙箱中安装此软件包及其所有依赖项,以便我可以随意操作,忽略我可能全局安装的任何其他软件包”?我尝试了建议这里的 --shadow-installed-packages,但我收到了相同的错误提示。

1个回答

5

base(以及其他一些包)的问题在于它们与您所拥有的 GHC 版本绑定。您不能仅仅通过 sandbox 安装不同版本的 base

cabal HEAD 有一个标志 --allow-newer,可以帮助解决这个问题。或者直接向 monad-journal 的维护者提出放宽版本限制的请求。


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