首页 文章

堆栈安装失败,包安装错误

提问于
浏览
2

我正在尝试第一次运行堆栈,但在示例项目中运行 stack setup (来自 stack new helloworld new-template )失败并显示以下输出(我跳过了开头,我认为这是正常的):

Installing library in
/home/ajl/.stack/programs/x86_64-linux/ghc-7.10.2/lib/ghc7.10.2/ghc_JzwEp1oQ8kA7NFNTGk1ho5 "/home/ajl/.stack/programs/x86_64-linux/ghc-7.10.2/lib/ghc-7.10.2/bin/ghc-pkg" --force --global-package-db "/home/ajl/.stack/programs/x86_64-linux/ghc-7.10.2/lib/ghc-7.10.2/package.conf.d" update rts/dist/package.conf.install
Reading package info from "rts/dist/package.conf.install" ... done.

: Warning: Unrecognized field 420 on line 420
(Skipped unrecognized field for every line 419 down to 1)
: Warning: Unrecognized field 1 on line 1
: missing id field
: invalid package identifier:
: invalid package key:
make[1]: *** [install_packages] Error 1
make: *** [install] Error 2

Installing GHC ...%

我在Ubuntu 14.04上运行堆栈1.0.2 . 不确定它是否相关,但我已经在系统上安装了带有Cabal 1.23.0.0的ghc 7.10.1,它工作正常 .

我已经尝试将解析器更改为较旧的ghc版本的旧LTS版本 . 我也尝试删除 ~/.stack . 鉴于错误的无益性,不知道还有什么可以尝试 .

1 回答

  • 2

    我想到了 . GHC构建使用 grep 来生成 packages.conf.install . 我在zsh配置中设置了 GREP_OPTIONS=--color=auto -n . -n 将行号放在所有内容之前,这导致了错误 .

    之前我无法找到 packages.conf.install 的原因是因为它是在GHC make 期间动态制作的 . 堆栈在/ tmp中执行 .

相关问题