【发布时间】:2018-07-31 09:45:18
【问题描述】:
我正在尝试使用堆栈安装 wx。我没有全局安装 Haskell 并使用 stack new <app> new-template 创建一个新项目。接下来,在目录中我运行stack install wx 并收到一条错误消息:
In the dependencies for wx-0.92.3.0:
wxcore must match >=0.92, but the stack configuration has no specified
version (latest matching version is 0.92.3.0)
跟进建议的操作并重新运行stack install wx 几次,额外的部门列表如下所示:
- wxcore-0.92.3.0
- wxc-0.92.3.0
- wxdirect-0.92.3.0
- Cabal-1.24.2.0
- process-1.4.3.0
- base-4.10.1.0
此时,堆栈抱怨:
In the dependencies for process-1.4.3.0:
base-4.11.1.0 from stack configuration does not match >=4.4 && <4.11
(latest matching version is 4.10.1.0)
并建议再次添加base-4.10.1.0,但它已经存在了。
问:那么,我应该如何安装 wx?
wxHaskell 真的那么难吗?我应该开始使用 cabal 而不是 stack 吗? 我使用最新的堆栈版本 1.7.1 和 lts-12.4 作为解析器。 类似的question 于 2015 年发布。
【问题讨论】:
-
wxHaskell 不是当前堆栈版本的一部分;除了解析器中的内容之外,您不应尝试使用与
base(或Cabal和process)不同的版本。您可以尝试使用--resolver lts-9.21重新配置。 LTS 9.21 具有基础 4.10,因此只要您从额外的部门中删除与 wx 无关的所有内容,这可能会起作用 -
LTS 9.21 给出了同样的问题。猜猜是时候开始使用 cabal 了。
-
对我来说,这适用于
lts-8.16和extra-deps: - wxdirect-0.92.3.0 - wxc-0.92.3.0 - wxcore-0.92.3.0 - wx-0.92.3.0。您对 cabal 文件中的base没有限制吗?祝你好运,我记得我很难让它发挥作用......
标签: haskell haskell-stack wxhaskell