【发布时间】:2021-07-08 13:53:26
【问题描述】:
我正在测试 hint 库,它会做一些神奇的事情——在运行时评估 Haskell 代码!该库几乎按预期工作,但出现偏差后我脑海中出现了一个问题。
假设有一个典型的新堆栈项目,模板来自带有 app 和 library 的模板。应用程序对库的依赖与任何其他包(base、text、lens 等)的描述方式相同,但 Haskell 脚本文件无法导入驻留在同一堆栈包的库中的模块,同时来自 hackage 库的模块,例如 进程 库已解决,脚本没有任何问题。
一旦我将脚本中所需的模块提取到堆栈子包中,它就会变得可用。
那么,是否有一个链接技巧使额外的堆栈子包无效?
【问题讨论】:
-
您的应用程序是否在 GHC(使用的任何版本提示)知道您的库已安装的上下文中运行? Stack(和 cabal!这里没有一点堆栈)在 GHC 包环境中做了一些有趣的事情。