运行 haskell 使用 cabal 修饰 GUI

Run haskell gloss GUI using cabal

我是 haskell 的新手,我想学习如何使用 haskell 平台创建 GUI。我找到了这个井字游戏示例,但我似乎无法弄清楚如何 运行 它。

https://github.com/DevJac/gloss-tic-tac-toe

我运行ned Setup.hs,它编译了但什么也没发生。尝试了 cabal 运行,这是输出:

程序包从未配置过。使用默认标志进行配置。如果这 失败,请运行手动配置。 解决依赖... 配置 gloss-tic-tac-toe-0.1.0.0... cabal:至少缺少以下依赖项: 基础 ==4.7.*,光泽 >=1.9.2.1 && <1.10

有什么想法吗?

更新:

以下是我为使其编译所做的工作:

  1. 第一个运行cabal install gloss-examples

这需要一段时间,因为它会安装很多依赖项。 tic-tac-toe 程序也需要这些依赖项。

  1. 然后这样做:

    git 克隆 https://github.com/DevJac/gloss-tic-tac-toe cd 井字棋

并将 .cabal 文件中的 build-depends 节更改为:

  build-depends:       base       >= 4.7,
                       gloss      >= 1.9.2.1,
                       containers >= 0.5.5.1

基本上只是删除所有上限。

  1. 运行 cabal build

  2. 如果构建成功,运行 可执行文件:

    ./dist/build/gloss-tic-tac-toe/gloss-tic-tac-toe
    

您似乎对 haskell 很陌生,所以最好安装 stack

那么在git clone https://github.com/DevJac/gloss-tic-tac-toe之后最好对下载的源进行如下修改:

删除不需要的 libsrc 文件夹,将 gloss-tic-tac-toe.cabal 文件的构建依赖部分替换为以下内容:

  build-depends:       base       >= 4.8     && < 4.9
               ,       gloss
               ,       containers

并添加新文件stack.yaml

resolver: lts-5.17
packages:
- '.'
extra-deps:
- gloss-1.10.1.1
- gloss-rendering-1.10.1.1
flags: {}
extra-package-dbs: []

这是您需要的完整配置 - 然后 运行ning

$ > stack build
... (might take some time)
$ > stack exec -- gloss-tic-tac-toe

会运行游戏就可以玩了!