有没有办法从Haskell软件包中导入(使用import
或m +
)模块,该模块已在本地构建但未安装(例如,使用Cabal)?
例如,如果我在本地目录中构建了一个包,那么,MyPkg/dist/build/
包含所有相同的.dyn_hi
,.hi
,.a
和Cabal安装版本可能具有的.dylib
个文件和子文件夹(例如)MyPkg-0.0.1.0
,有一种从
import MyPkg.Sub
或
:m + MyPkg.Sub
如果已安装,我会这样做吗?
我已尝试cd
(在GHCi之前和之内)MyPkg/dist/build/
(以及沿途的每个地方)并尝试ghci -i...
和:set -i...
相同的位置。但在所有情况下,我可以让import
或:m +
工作的唯一方法是安装软件包。
我了解如何安装,以及如何使用沙箱进行安装。但有没有一种方法可以导入(假设文件“正确”),而无需安装?
我知道答案必须是(也许是合格的)“是”,因为我的IDE以某种方式实现了这一点:在同一个项目中,我可以包含成功使用import
的应用程序,而无需安装从中导入模块的包。