Cabal 中暴露的库模块和依赖模块有什么区别?

问题描述

我正在测试 hint 库,它具有神奇的作用 - 在运行时评估 Haskell 代码!该库几乎按预期运行,但出现偏差后我的脑海中出现了一个问题。

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

一旦我将其解压缩到堆栈子包中,脚本中所需的模块就可用了。

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

link the issue on Github

解决方法

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