6

Haskell 包依赖关系仍然是一个问题,但我不知道如何解决这个问题。我的环境:

  • Ubuntu 10.10,全新安装
  • apt-get install ghc6 cabal-安装
  • 阴谋集团更新 && 阴谋集团安装 阴谋集团安装

然后:

  • 阴谋集团安装yesod

我明白了:

$ cabal install yesod
cabal: Error: some packages failed to install:
persistent-0.3.1.2 failed during the building phase. The exception was:
ExitFailure 1
yesod-0.6.6 depends on persistent-0.3.1.2 which failed to install.
$ cabal install persistent-0.3.1.2
Resolving dependencies...
cabal: cannot configure blaze-builder-0.2.0.2. It requires text ==0.10.*
For the dependency on text ==0.10.* there are these packages: text-0.10.0.0,
text-0.10.0.1 and text-0.10.0.2. However none of them are available.
text-0.10.0.0 was excluded because enumerator-0.4.3.1 requires text ==0.11.*
text-0.10.0.1 was excluded because enumerator-0.4.3.1 requires text ==0.11.*
text-0.10.0.2 was excluded because enumerator-0.4.3.1 requires text ==0.11.*

如何安装 yesod?

4

4 回答 4

4

要查看更多详细信息,请添加 -v(甚至是 -v2 或 -v3),也许还有 --dry-run。使用 ghc-pkg 列表查看当前安装的内容也很有用。

当您升级持久化时,cabal 决定它还应该重建依赖于它的现有 yesod。这会触发 blaze-builder 升级。blaze-builder 需要比正在安装的枚举器更旧的文本。

http://hackage.haskell.org/package/enumerator声称支持旧文本版本以及 0.11。但阴谋集团不知何故被智取了。详细的输出可能会说明更多信息,或者看看您是否可以通过一两个 --constraint 来帮助它。或者先卸载一些相关的包,比如yesod。当然,请确保您已经完成了 cabal 更新。

于 2010-12-09T06:41:39.897 回答
2

yesod 正在大力开发中。给 michael snoyman 发电子邮件(联系信息可以在这里找到),他对请求非常敏感

于 2010-12-09T04:33:01.140 回答
1

我在这里找到了一些关于更好的安装过程的信息:

https://github.com/yesodweb/yesod

查找有关 cabal-src 的部分。

我正在尝试。

我会报告,让人们知道它是否有效。

于 2012-02-03T22:28:00.777 回答
1

存在依赖关系中断。将此作为错误报告给包的作者。也可以考虑手动下载和安装旧版本的枚举器。

于 2010-12-09T03:09:27.807 回答