首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Haste集成到堆栈工具链中

将Haste集成到堆栈工具链中
EN

Stack Overflow用户
提问于 2016-08-22 23:56:29
回答 1查看 428关注 0票数 5

我在一个项目中使用Haskell Stack,我想包括仓促,它编译客户端逻辑。我喜欢Stack抽象出不同环境之间的构建和安装问题,如果它构建在我的机器上,它将建立在其他人的基础上。

如何将哈斯特集成到堆栈工具链中?完成一次设置是可以的,但我不想每次代码移动到新系统时都要重新创建整个工具链。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-30 22:41:32

这应该是可行的,但是考虑到这一点,因为由于已知的bug,我有额外的问题。确保您的.cabal文件具有正确的依赖项,特别是if impl(haste) ..部件(看看这个)。似乎大部分的依赖项都是与lts-6.14一起工作的(因为Haste使用了GHC7.10.3),所以我使用它作为解析器。

haste-project.cabal

代码语言:javascript
复制
name:                haste-project
version:             0.1.0.0
category:            Web
build-type:          Simple
cabal-version:       >=1.10

executable haste-project-exe
  hs-source-dirs:      app
  main-is:             Main.hs
  build-depends:       base  >= 4.8 && < 4.9
  if impl(haste)
    build-depends:     haste-lib >= 0.5 && < 0.6
  else
    build-depends:     haste-compiler >= 0.5 && < 0.6
  default-language:    Haskell2010

stack.yaml

代码语言:javascript
复制
extra-deps:
- HTTP-4000.2.23
- ghc-simple-0.3
- haste-compiler-0.5.4.2
- shellmate-0.2.3
resolver: lts-6.14

然后,在同一个目录中,您现在可以继续执行常见的哈斯特安装说明,但是可以使用堆栈补充Cabal命令:

代码语言:javascript
复制
$ stack build
$ stack install haste-compiler # installs haste-boot, haste-cat, haste-pkg, and hastec
$ stack exec haste-boot        # setup Haste (where I get the bug I mentioned above)

然后,您应该能够运行所有常用命令,但以stack exec --作为前缀。例如

代码语言:javascript
复制
$ stack exec -- hastec -O2 -fglasgow-exts myprog.hs
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39090396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档