yesod持久性依赖缺失

时间:2014-05-14 19:20:56

标签: yesod

我试图从官方网站上关注Yesod快速启动,但是在运行yesod devel时(安装并运行yesod init之后),如果我使用sqlite,由于缺少依赖项而无法构建, postgresql,postgresql + fay或mysql(来自yesod-init的' simple'选项工作正常)。

给出的错误信息是:

对于sqlite:

cabal: At least the following dependencies are missing:
persistent-sqlite ==1.3.*

对于postgresql:

cabal: At least the following dependencies are missing:
persistent-postgresql ==1.3.*

对于postgres + fay:

cabal: At least the following dependencies are missing:
fay >=0.16, persistent-postgresql ==1.3.*, yesod-fay >=0.5.0.1

对于mysql:

cabal: At least the following dependencies are missing:
persistent-mysql  ==1.3.*

对于mongoDB:

cabal: At least the following dependencies are missing:
persistent-mongoDB ==1.3.*

有谁知道出了什么问题以及如何修复它?

更新

我能够通过与yesod-platform分开安装一些缺少的依赖项来解决一些问题。

cabal install persistent-sqlite使用sqlite修复了任何问题。

在将我的Mint 16系统(libpq-dev和libmysqlclient-dev)安装一些额外的分发包之后,

cabal install persistent-postgresqlcabal install persistent-mysql工作。

cabal install persistent-mongodb因我无法解决的错误而失败:

解决依赖关系...... 配置persistent-mongoDB-1.3.1 ...... 构建persistent-mongoDB-1.3.1 ...... 预处理库persistent-mongoDB-1.3.1 ... [1/1]编译Database.Persist.MongoDB(Database / Persist / MongoDB.hs,dist / build / Database / Persist / MongoDB.o)

数据库/坚持/ MongoDB.hs:420:26:     不在范围内:类型构造函数或类`MonadThrow' 无法安装persistent-mongoDB-1.3.1 cabal:错误:某些软件包无法安装: 在构建阶段,persistent-mongoDB-1.3.1失败了。例外是: ExitFailure 1

有人知道如何解决这个问题吗?

更新

最后一个问题已经由维护者更新了cabal包解决了。

1 个答案:

答案 0 :(得分:2)

有一个没有此错误的新版本(我已经安装了persistent-mongoDB-1.3.1.1,之前的版本有你发现的错误)。

执行cabal update刷新包列表,然后重试。