【发布时间】:2015-07-13 20:49:24
【问题描述】:
我决定试一试。我已经安装了它并用它来安装最新版本的 ghc。我已经使用堆栈安装了一些软件包,但是这些软件包对 ghc 不可见,当我使用 ghc-pkg 列出软件包时,我看到我通过堆栈安装的软件包不存在。为什么是这样?我是否误解了堆栈的目的?
【问题讨论】:
标签: haskell ghc stackage haskell-stack
我决定试一试。我已经安装了它并用它来安装最新版本的 ghc。我已经使用堆栈安装了一些软件包,但是这些软件包对 ghc 不可见,当我使用 ghc-pkg 列出软件包时,我看到我通过堆栈安装的软件包不存在。为什么是这样?我是否误解了堆栈的目的?
【问题讨论】:
标签: haskell ghc stackage haskell-stack
堆栈从不接触全局包数据库。它使用分层数据库方法
因此,大多数软件包都安装在快照数据库中,而不是污染全局数据库,因此大多数软件包都可以共享。由于堆栈快照中的包是兼容的(即总是一起编译),我们不会遇到 Cabal hell。
您可以使用stack ghci 或stack ghc 来运行配置了包数据库的相应命令。
更准确的解释在stack wiki
【讨论】: