我已经构建了ghc-HEAD,我想尝试构建所有的堆栈或每晚,看看它能做多少。
我说的任何内容都不能说服堆栈使用我的新ghc构建任何东西。我尝试设置如下:
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构建所有内容所需的全部内容。我说
stack install --ghc-variant=aarch64-HEAD
它告诉我它不知道这些包中的任何一个。尝试堆栈求解器。所以我试试了,经过很长时间后它也放弃了。
接下来我尝试创建一个自定义快照,再次将所有包放在snapshot.yaml中并指向stack.yaml。在stack.yaml中:
resolver:
name: my-snapshot
location: "./my-snapshot.yaml"
...
在my-snapshot.yaml:
中compiler: ghc-8.1.20160209
packages:
- accelerate-0.15.1.0
- ace-0.6
...
这也不起作用。所以我尝试与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
答案 0 :(得分:1)
所以我试试了,经过很长时间后它也放弃了。
你是什么意思"放弃"?什么是输出?
这不起作用
你是什么意思"没有工作"?什么是输出?
堆栈安装--ghc-variant = aarch64-HEAD
你在堆什么安装?您需要指定一个解析器,在这种情况下,编译器版本 - 仅指定--ghc-variant
是不够的。你需要像stack install --allow-newer --ghc-variant=aarch64-HEAD --compiler ghc-8.1.20160209
这样的东西。不幸的是,目前可能因https://github.com/commercialhaskell/stack/issues/1579
自定义快照是解决此问题的一种方法,但您需要列出所需每个软件包的确切版本。
我不确定bin-package-db错误来自何处,抱歉