Windows上的Haskell插件包addDLL错误 [英] Haskell plugins package on Windows addDLL error
问题描述
我有Windows Vista 64位.我今天安装了最新的Haskell平台(ghc --version表示7.0.4).我安装了最新的cygwin.
I have windows Vista 64 bit. I installed the latest Haskell Platform today (which ghc --version says 7.0.4). I installed the latest cygwin.
我运行了cabal install插件,它有一些小问题(我没有按要求指定前缀路径,而Env.hs中缺少导入),所以我cabal扩展了固定的安装方法.
I ran cabal install plugins, it had minor issues (I didn't specify prefix path as I should have and there was a missing import in Env.hs), so I cabal expand'ed fixed... it installed.
我运行了一个简单的示例(具体是这一个,我得到了错误:
I run a simple example (specifically this one and I get this error:
Main.exe: user error (loadShared: couldn't load `m' because addDLL: could not load DLL)
有任何解决方法的想法吗?
Any ideas on how to resolve it?
哦,该示例在Linux(Ubuntu)GHC 7.0.3上运行良好,因此它是针对7.0.4特定问题的Windows.
Oh, and the example works fine on Linux (Ubuntu) GHC 7.0.3, so it's either a Windows for 7.0.4 specific issue.
推荐答案
在尝试加载库时,当它为integer-gmp软件包查找dll时会收到["m","wsock32"].因此,该错误是由于它尝试加载似乎不存在的dll"m"引起的.我猜这是某个地方的错误.
When it's trying to load libraries, when it looks up the dlls for the integer-gmp package for it receives ["m", "wsock32"]. So the error is caused by it trying to load a dll "m", which apparently doesn't exist. I'm guessing this is a bug somewhere.
绕过它之后,我可以走得更远.正如Stephen Tetley所提到的,获取HscEnv还有另一个错误.跟随那条小路,我得以绕开它.现在,我遇到了这个错误:
After bypassing that, I was able to get further. As Stephen Tetley mentioned, there is another bug about getting an HscEnv. Following that rabit trail, I was able to bypass that. Now, I'm at this error:
Main.exe:Plug.dll.a:不是x86 PEi386 Main.exe:用户错误(无法加载模块"Plug.dll.a")
Main.exe: Plug.dll.a: Not x86 PEi386 Main.exe: user error (Could not load module `Plug.dll.a')
但是我将这个问题标记为已回答,因为我在该问题中提到的具体错误是由于ghc某处或某些地方的错误所致.
But I'll mark this question as answered since the specific error I mention in the question is because of what appears to be a bug somewhere in ghc or something.
这篇关于Windows上的Haskell插件包addDLL错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!