Cabal - 如何安装特定版本的软件包

时间:2014-01-07 08:54:19

标签: haskell cabal

我需要一个包的次要版本,例如persistent-postgresql ..或hdbc-mysql或其他。

如果我跑

cabal install persistent-postgresql

它将安装persistent-postgresql版本1.3,然后我收到错误'至少缺少以下依赖项:persistent-postgresql> = 1.2&& < 1.3' 这就是为什么我想安装此软件包的早期版本以使其工作。或者可能有另一种解决方案?

提前致谢。

1 个答案:

答案 0 :(得分:16)

您应该尝试安装实际依赖于persistent-postgresql的软件包,因为cabal会尝试自动选择正确的版本。

但是,如果您确实需要这样做,一个简单的方法是:

cabal install persistent-postgresql-1.2.1.3

或者更复杂:

cabal install persistent-postgresql --constraint 'persistent-postgresql < 1.3'

在这里,你可以继续指定你想要比特定版本更早的东西,因为事情不起作用而不需要知道确切的下一个版本。如有必要,您还可以在其他包上设置约束。