Haskell Stack包安装错误

McB*_*den 1 haskell haskell-stack

user$: stack install dictionaries

Error: While constructing the build plan, the following exceptions were encountered:

In the dependencies for dictionaries-0.1.0.0:
    binary-0.8.3.0 must match >=0.7.5 && <0.8 (latest applicable is 0.7.6.1)
    time-1.6.0.1 must match >=1.5.0 && <1.6 (latest applicable is 1.5.0.1)
Run Code Online (Sandbox Code Playgroud)

使用上面的命令,我想dictionaries全局安装包.

我有什么选择?我计划stack unpack dictionaries,然后修改版本.但是,如何在全球范围内安装修改后的"本地"软件包?

这里的最佳做法是什么?

谢谢

jei*_*iea 6

最简单的一个:添加allow-newer: true到stack.yaml

在这种情况下,它将成为解决方案.它解决了像你这样的上限版本问题.但当然存在构建失败的可能性.

也许可能的一个:将解析器更改为每晚最新

这种失败有时发生在夜间快照上.并且通常会通过库更新和新的夜间快照进行修复.如果您使用旧快照,请将其更改为最新.或等待可能是解决方案之一.

最常见的一个:依赖于修改后的本地包

您可以通过将包路径添加到stack.yaml来实现packages:.然后堆栈将使用它而不是快照1.

你想要的方式可能不是一个好主意.即使这是可能的,您将如何处理许多版本的快照案例?应为每个包指定本地依赖项.