ghc-mod无法找到用户安装的模块

时间:2014-09-05 18:33:08

标签: haskell ghc-mod

我遇到ghc-mod无法在〜/ .ghc /目录中找到模块的情况。

程序(foo.hs)只是:

import Control.Monad.Loops
main = undefined

ghci加载foo.hs没有任何错误。

ghc-pkg list生成输出:

/Library/Frameworks/GHC.framework/Versions/7.8.3-x86_64/usr/lib/ghc-7.8.3/package.conf.d
    Cabal-1.18.1.4
    GLURaw-1.4.0.1
    ...
~/.ghc/x86_64-darwin-7.8.3/package.conf.d:
    ...
    monad-loops-0.4.2.1

ghc-mod check foo.hs错误:

x.hs:4:8:Could not find module ‘Control.Monad.Loops’Perhaps you meant  Control.Monad.Cont (from mtl-2.1.3.1)  Control.Monad.List (from mtl-2.1.3.1)  Control.Monad.Trans (from mtl-2.1.3.1)Use -v to see a list of the files searched for.

ghc-mod位于〜/ Library / Haskell / bin中,ghc-mod -v发出:

ghc-mod version 5.0.1.2 compiled by GHC 7.8.3
...

有什么奇怪的是,在haskell模式下在Emacs中加载foo.hs时我不会收到错误,并且可能会使用ghc-mod

有没有办法进一步调试和/或配置ghc-mod来查看我的〜/ .ghc目录?

1 个答案:

答案 0 :(得分:1)

答案是ghc-mod将在当前工作目录的所有父目录中查找cabal.sandbox.config文件,如果找到一个,则使用该文件,这隐藏了我的~/.ghc包。目录