ghc找不到我的cabal安装包

non*_*ont 9 haskell cabal

我已经安装了ghc 6.12.3,然后安装了Haskell平台.我正在尝试编译测试程序:

$ ghc test.hs
test.hs:3:0:
    Failed to load interface for `Bindings':
      Use -v to see a list of the files searched for.
Run Code Online (Sandbox Code Playgroud)

所以,我自然而然

cabal install Bindings
Run Code Online (Sandbox Code Playgroud)

哪个工作正常,并将包放在〜/ .cabal/lib/bindings-0.1.2问题是,当我再次使用ghc编译时,它仍然找不到我用cabal安装的软件包.在详细模式下编译给出:

ghc -v test.hs
Using binary package database: /home/ludflu/ghc/lib/ghc-6.12.3/package.conf.d/package.cache
Using binary package database: /home/ludflu/.ghc/x86_64-linux 6.12.3/package.conf.d/package.cache
Run Code Online (Sandbox Code Playgroud)

正如另一个stackoverflow用户所建议的,我尝试过:

ghc-pkg describe rts > rts.pkg
vi rts.pkg                      # add the /home/ludflu/.cabal/lib to `library-dirs` field
ghc-pkg update rts.pkg
Run Code Online (Sandbox Code Playgroud)

但无济于事.如何将.cabal添加到要搜索的包目录列表中?谢谢!

Sco*_*est 6

您可以检查安装了哪些软件包ghc-pkg list.可能需要指定要使用的包ghc,-package <pkgname>或者我相信添加--make将触发追逐依赖项,包括包.

编辑:绑定包确实已经过时,请参阅hackage页面.这不是包管理问题,唯一可用的模块是Bindings.Deprecated,您完全能够加载,即使它是一个空模块.我相信相关的部分已被分解bindings-<module>,所以如果你想要绑定功能,你应该看看这些包.