rem*_*ezx 8 haskell ghc runhaskell
我建立简单的脚本runhaskell,我尝试使用FastString的ghc-7.10.2.只是:
import FastString
main = putStrLn "Hello SO"
Run Code Online (Sandbox Code Playgroud)
运行它runhaskell Main.hs导致错误:
Main.hs:1:8:
Could not find module ‘FastString’
It is a member of the hidden package ‘ghc-7.10.2’.
Use -v to see a list of the files searched for.
Run Code Online (Sandbox Code Playgroud)
我知道我可以构建它cabal并指定ghc为依赖,但我真的需要这样做runhaskell.
我怎样才能取消隐藏ghc库runhaskell?
TL; DR:
$ ghc-pkg expose ghc
Run Code Online (Sandbox Code Playgroud)
好吧,runhaskell基本上是一个包装runghc,runghc基本上是ghc.它们都遵循相同的规则:它们只能从配置的数据库中导入公开的包.
使用ghc-pkg describe {package-name},可以获得有关某个包的信息.这里的重要领域是exposed:
$ ghc-pkg describe ghc | grep expose
exposed: False
exposed-modules:
Run Code Online (Sandbox Code Playgroud)
如您所见,包未暴露(因此它是隐藏的).使用ghc-pkg expose,您可以取消隐藏:
$ ghc-pkg expose ghc
Run Code Online (Sandbox Code Playgroud)
请记住,如果要更改系统范围的数据库数据库的设置,则需要权限.
| 归档时间: |
|
| 查看次数: |
206 次 |
| 最近记录: |