首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GHC包隐藏

GHC包隐藏
EN

Stack Overflow用户
提问于 2014-10-01 15:52:22
回答 2查看 3.6K关注 0票数 8

我正在尝试运行从Haskell wiki获得的这个简单的示例。

代码语言:javascript
复制
import GHC
import GHC.Paths ( libdir )
import DynFlags

main = 
    defaultErrorHandler defaultFatalMessager defaultFlushOut $ do
      runGhc (Just libdir) $ do
        dflags <- getSessionDynFlags
        setSessionDynFlags dflags
        target <- guessTarget "test_main.hs" Nothing
        setTargets [target]
        load LoadAllTargets

我得到的错误消息是:

代码语言:javascript
复制
amy@wombat$ ghc --make amy15.hs 

amy15.hs:1:8:
    Could not find module ‘GHC’
    It is a member of the hidden package ‘ghc-7.8.3’.
    Use -v to see a list of the files searched for.

amy15.hs:3:8:
    Could not find module ‘DynFlags’
    It is a member of the hidden package ‘ghc-7.8.3’.
    Use -v to see a list of the files searched for.

现在,ghc-7.8.3是我用来进行编译的工具,所以很明显,这个包已经安装好了。

代码语言:javascript
复制
amy@wombat$ cabal info ghc
* ghc              (library)
    Versions available: [ Not available from server ]
    Versions installed: 7.8.3
... and so on

为什么GHC看不到ghc包?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-01 18:18:54

大多数包裹确实是隐藏的。

若要暂时取消隐藏它们,可以使用ghc --make amy15.hs -package ghc-7.8.3

若要永久解除隐藏,请使用@mhwombat建议的方法。

票数 8
EN

Stack Overflow用户

发布于 2014-10-01 15:52:22

显然,默认情况下,ghc包是隐藏的,至少如果您像我一样手动安装ghc,而不是安装Haskell平台。因此,我需要“不隐藏”的包裹如下:

代码语言:javascript
复制
sudo ghc-pkg expose ghc
票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26145383

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档