【发布时间】:2017-06-09 14:16:57
【问题描述】:
我正在尝试使用 Haskell Stack 设置项目,但使用提供的 ghc 堆栈我遇到 -fPIC 错误 GitHub issue
为了绕过 fPIC 问题,我尝试使用包管理器提供的 GHC,使用 7.10.3 版本(堆栈当前使用 8.0.2)
当我尝试强制堆栈使用系统 ghc 时,它会忽略我。 我尝试使用 /home/user/.stack/config.yaml 和 {project}/stack.yaml system-ghc 覆盖:true 选项...但堆栈在设置中使用 8.0.2 版本。
我错过了什么吗?
TL;DR
堆栈忽略 system-ghc : true 选项
我正在运行 Sabayon 16
“haskell-primer”是项目名称
stack list-dependencies
base 4.9.1.0
ghc-prim 0.5.0.0
haskell-primer 0.1.0.0
integer-gmp 1.0.0.1
rts 1.0
【问题讨论】:
-
我认为(不确定)如果依赖解析器认为它合适,堆栈只会使用系统 ghc。检查您的依赖项之一是否需要 ghc8。
-
感谢您的评论。我检查了 stack list-dependencies ` stack list-dependencies base 4.9.1.0 ghc-prim 0.5.0.0 haskell-primer 0.1.0.0 integer-gmp 1.0.0.1 rts 1.0`
-
覆盖解析器进入 stack.yaml 似乎有效。我将它编辑为使用 lts-6.35,现在它映射到 system-ghc。但是......我不知道这是否是解决问题的方法。我不想手动编辑我所有的 stack.yaml 文件...
-
为什么需要使用系统GHC?在
stack.yaml文件中指定您所需的lts,堆栈将使用您需要的任何版本的GHC。这是为特定项目选择特定 GHC 版本的正确方法。
标签: haskell haskell-stack