【问题标题】:What difference between exposed library modules and dependency modules in Cabal?Cabal 中暴露的库模块和依赖模块有什么区别?
【发布时间】:2021-07-08 13:53:26
【问题描述】:

我正在测试 hint 库,它会做一些神奇的事情——在运行时评估 Haskell 代码!该库几乎按预期工作,但出现偏差后我脑海中出现了一个问题。

假设有一个典型的新堆栈项目,模板来自带有 applibrary 的模板。应用程序对库的依赖与任何其他包(base、text、lens 等)的描述方式相同,但 Haskell 脚本文件无法导入驻留在同一堆栈包的库中的模块,同时来自 hackage 库的模块,例如 进程 库已解决,脚本没有任何问题。

一旦我将脚本中所需的模块提取到堆栈子包中,它就会变得可用。

那么,是否有一个链接技巧使额外的堆栈子包无效?

link the issue on Github

【问题讨论】:

  • 您的应用程序是否在 GHC(使用的任何版本提示)知道您的库已安装的上下文中运行? Stack(和 cabal!这里没有一点堆栈)在 GHC 包环境中做了一些有趣的事情。

标签: haskell ghc cabal hint


【解决方案1】:

尝试运行stack install 将您的包安装到包数据库中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-29
    • 1970-01-01
    • 2019-01-11
    • 2015-11-25
    • 2011-09-16
    • 2023-03-28
    • 2013-06-04
    • 1970-01-01
    相关资源
    最近更新 更多