Haskell堆栈:安装的包不可见
Haskell Stack: installed packages are not visible
我用 stack install
安装了包,但我无法导入包,除非我使用 stack ghc
或 stack ghci
...
问题是我已经安装了 atom haskell ide
,它使用 ghc-mod
后端,它也没有看到堆栈安装的包!
您需要确保您有一个 ghc-mod
是最新的并且由与您的项目使用的相同版本的 ghc 构建。通过使用堆栈安装(使用与您的项目相同的解析器)来执行此操作。例如
$ stack install --resolver lts-6.11 ghc-mod
$ which ghc-mod
/Users/steshaw/.local/bin/ghc-mod
$ ghc-mod --version
ghc-mod version 5.5.0.0 compiled by GHC 7.10.3
要对此进行测试,也许可以使用 stack new
.
设置示例项目
$ stack new example
$ cd example
更改 example.cabal
以包括 example-exe
的 HTTP
包。
例如
executable example-exe
hs-source-dirs: app
main-is: Main.hs
ghc-options: -threaded -rtsopts -with-rtsopts=-N
build-depends: base
, example
, HTTP
default-language: Haskell2010
使用 stack
构建以安装 HTTP 包。
$ stack build
现在启动 Atom。
$ atom .
您应该会发现从 HTTP 导入的内容在 Atom 中是可见的。
我用 stack install
安装了包,但我无法导入包,除非我使用 stack ghc
或 stack ghci
...
问题是我已经安装了 atom haskell ide
,它使用 ghc-mod
后端,它也没有看到堆栈安装的包!
您需要确保您有一个 ghc-mod
是最新的并且由与您的项目使用的相同版本的 ghc 构建。通过使用堆栈安装(使用与您的项目相同的解析器)来执行此操作。例如
$ stack install --resolver lts-6.11 ghc-mod
$ which ghc-mod
/Users/steshaw/.local/bin/ghc-mod
$ ghc-mod --version
ghc-mod version 5.5.0.0 compiled by GHC 7.10.3
要对此进行测试,也许可以使用 stack new
.
$ stack new example
$ cd example
更改 example.cabal
以包括 example-exe
的 HTTP
包。
例如
executable example-exe
hs-source-dirs: app
main-is: Main.hs
ghc-options: -threaded -rtsopts -with-rtsopts=-N
build-depends: base
, example
, HTTP
default-language: Haskell2010
使用 stack
构建以安装 HTTP 包。
$ stack build
现在启动 Atom。
$ atom .
您应该会发现从 HTTP 导入的内容在 Atom 中是可见的。