6
所以,我试图使用插件包从源文件动态加载haskell函数。源文件取决于包foo
与模块Foo.Bar
。我正在Cabal沙箱中运行我的项目,在那里我安装了foo
。我的主程序和我使用插件加载的模块都取决于foo
。我总是得到以下两个错误之一:Haskell插件和cabal沙箱
当我有安装在~/.cabal
foo
,我得到的错误:
GHCi runtime linker: fatal error: I found a duplicate definition for symbol
aizmvszmaizmlibzm0zi1_FooziBar_zdfTypeableBazzuds2_closure
whilst processing object file
/home/joey/.cabal/lib/foo-0.1/ghc-7.6.3/HSfoo-0.1.o
This could be caused by:
* Loading two different object files which export the same symbol
* Specifying the same object file twice on the GHCi command line
* An incorrect `package.conf' entry, causing some object to be
loaded twice.
GHCi cannot safely continue in this situation. Exiting now. Sorry.
当我没有它安装在~/.cabal
,我得到一个标准的“模块未找到“错误。而当我没有安装在我的沙箱中时,我得到相同的模块未找到错误,试图编译我的主程序代码。
插件文档很少。有关如何解决这个问题的任何想法?
如果你给出了最小值,编译,例子,这将是有益的。 –
明天我会做这个。它目前是一个相当大的yesod项目,我需要提取最小的部分。 – jmite
我有麻烦提出一个最小的例子。有任何想法吗? – jmite