yesod 持久性依赖缺失
Posted
技术标签:
【中文标题】yesod 持久性依赖缺失【英文标题】:yesod persistent dependencies missing 【发布时间】:2014-05-14 19:20:55 【问题描述】:我尝试按照官方网站的Yesod快速入门,但是在运行yesod devel
(安装并运行yesod init
后)时,如果我使用sqlite、postgresql、postgresql+,由于缺少依赖项而无法构建fay 或 mysql(yesod-init
中的“简单”选项可以正常工作)。
给出的错误信息是:
对于 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 平台分开安装一些缺少的依赖项来解决一些问题。
cabal install persistent-sqlite
修复了使用 sqlite 的所有问题。
cabal install persistent-postgresql
和 cabal install persistent-mysql
在我的 Mint 16 系统(libpq-dev 和 libmysqlclient-dev)安装了一些额外的分发包后工作。
cabal install persistent-mongodb
失败,出现我无法解决的错误:
解决依赖关系... 配置persistent-mongoDB-1.3.1 ... 构建persistent-mongoDB-1.3.1 ... 预处理库persistent-mongoDB-1.3.1... [1 of 1] 编译 Database.Persist.MongoDB (Database/Persist/MongoDB.hs, dist/build/Database/Persist/MongoDB.o)
数据库/Persist/MongoDB.hs:420:26: 不在范围内:类型构造函数或类“MonadThrow” 安装persistent-mongoDB-1.3.1 失败 cabal:错误:某些软件包无法安装: persistent-mongoDB-1.3.1 在构建阶段失败。例外是: 退出失败 1
有人知道如何解决这个问题吗?
更新:
维护者更新了 cabal 包,解决了最后一个问题。
【问题讨论】:
【参考方案1】:有一个新版本没有这个错误(我安装了persistent-mongoDB-1.3.1.1,之前的版本有你发现的错误)。
执行cabal update
以刷新包列表并重试。
【讨论】:
以上是关于yesod 持久性依赖缺失的主要内容,如果未能解决你的问题,请参考以下文章