我正在尝试让插件包在Windows上工作。
我有64位的windows Vista。我今天安装了最新的Haskell平台( ghc --版本是7.0.4)。我安装了最新的cygwin。
我运行了一个简单的示例(特别是this one ),在修复了各种东西(参见here)之后,我得到了这个错误:
Main.exe: Plug.dll: Not x86 PEi386
Main.exe: user error (Could not load module `Plug.dll')我不知道该怎么处理这个。
我用相同的方式编译了dll和测试代码,smae ghc:
ghc -shared -o Plug.dll Plug.hs
ghc -package ghc -o Main Main.hs此外,我使用InspectExe进行了检查,它显示Plug.dll文件是一个32位的动态链接库,并且能够成功加载它。
发布于 2012-03-24 08:16:14
GHC不支持在Windows平台(#1884)上编译64位二进制文件。GHC生成的所有可执行文件在Windows上都是32位的。这意味着您只能针对32位DLL进行链接。显然,您编译的DLL没有编译为32位,这可能是因为您使用了不同于MinGW的编译器来生成DLL。
https://stackoverflow.com/questions/9847246
复制相似问题