1

我正在尝试使用堆栈安装 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几次,extra-deps 列表如下所示:

- 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 作为解析器。2015年发布了一个类似的问题。

4

1 回答 1

1

Stéphane Laurent给出的提示有效!在我的 Debian 9 (stretch) 上,我使用了以下步骤:

  1. 安装所需的库

    sudo apt-get install libwxgtk3.0-dev libwxgtk-webview3.0-dev libwxgtk-media3.0-dev
    
  2. 创建一个堆栈项目stack new <app> new-template并切换到<app>目录

  3. stack.yaml文件进行以下更改:

    resolver: 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
    
  4. 运行stack install wx并耐心等待!

  5. 添加- wxpackage.yaml文件中的依赖项列表
于 2018-07-31T14:53:02.207 回答