我如何才能针对堆叠测试新的ghc版本 [英] How can I test a new ghc build against stackage
问题描述
我已经构建了ghc-HEAD,我想尝试构建所有的lts或每晚查看它能做什么.
I've built ghc-HEAD and I want to try building all of a stackage lts or nightly to see how much it can do.
我说的什么都不能说服堆栈使用我的新ghc构建任何东西.我尝试像这样设置:
Nothing I say can convince stack to build anything using my new ghc. I try setting up like:
stack setup 8.1.20160209 --ghc-variant=aarch64-HEAD --ghc-bindist=https://s3-us-west-1.amazonaws.com/stack-aarch64/ghc-8.1.20160209-aarch64-unknown-linux.tar.xz
然后下载lts config.cabal并将所有软件包复制到my.cabal文件中.这是使用常规ghc构建所有内容所必需的.我说
And then I download an lts config.cabal and copy all of the packages into my.cabal file. This is all that's necessary to build everything with a regular ghc. I say
stack install --ghc-variant=aarch64-HEAD
它告诉我它不知道这些软件包在哪里.尝试堆栈求解器.所以我尝试了一下,很久以后就放弃了.
And it tells me it has no idea where any of these packages are. Try stack solver. So I try that and it gives up after a long time too.
接下来,我尝试制作一个自定义快照,再次将所有软件包都放在snapshot.yaml中,然后将stack.yaml指向它.在stack.yaml中:
Next I try to make a custom snapshot, again just putting all the packages in a snapshot.yaml and pointing stack.yaml at it. In stack.yaml:
resolver:
name: my-snapshot
location: "./my-snapshot.yaml"
...
在my-snapshot.yaml中:
In my-snapshot.yaml:
compiler: ghc-8.1.20160209
packages:
- accelerate-0.15.1.0
- ace-0.6
...
那也不行.所以我尝试与stack.yaml进行谈判
That doesn't work either. So I try negotiating with stack.yaml
skip-ghc-check: true
compiler: ghc-8.1.20160209
ghc-variant: aarch64-HEAD
setup-info:
ghc:
aarch64-HEAD:
8.1.20160209:
url: "https://s3-us-west-1.amazonaws.com/stack-aarch64/ghc-8.1.20160209-aarch64-unknown-linux.tar.xz"
install-ghc: true
allow-newer: true
现在stack install
说:
The following package identifiers were not found in your indices: bin-package-db-0.0.0.0
推荐答案
所以我尝试了一下,很长一段时间后它也放弃了.
So I try that and it gives up after a long time too.
放弃"是什么意思?输出是什么?
What do you mean by "gives up"? What's the output?
那也不行
不起作用"是什么意思?输出是什么?
What do you mean by "doesn't work"? What's the output?
stack install --ghc-variant = aarch64-HEAD
stack install --ghc-variant=aarch64-HEAD
您要堆叠安装什么?您需要指定一个解析器,在这种情况下,需要指定一个编译器版本-仅指定--ghc-variant
是不够的.您需要类似stack install --allow-newer --ghc-variant=aarch64-HEAD --compiler ghc-8.1.20160209
的内容.不幸的是,由于 https://github.com/commercialhaskell/,目前可能无法正常工作堆栈/问题/1579
What are you stack installing? You need to specify a resolver, and in this case, a compiler version - specifying just --ghc-variant
is not enough. You need something like stack install --allow-newer --ghc-variant=aarch64-HEAD --compiler ghc-8.1.20160209
. Unfortunately, at the moment that probably won't work due to https://github.com/commercialhaskell/stack/issues/1579
自定义快照是解决此问题的一种方法,但是您需要列出所需的每个软件包的确切版本.
Custom snapshots is one way to go about this, but you will need to list the exact version of every package you want.
我不确定bin-package-db错误的来源,对不起
I'm not sure where that bin-package-db error comes from, sorry
这篇关于我如何才能针对堆叠测试新的ghc版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!