3

我正在尝试使用 Cython 来包装 C++ 类。基本上我按照这个页面上的例子。

我正在使用Windows7 64-bit, Python 2.7.4 64-bit, MinGW 4.3.3 (32/64bit),并且SDK已设置为x64 mode

在这种情况下,我成功构建了 .pyd 文件。我尝试使用以下代码导入它:

 import sys
 sys.path.append("C:\\Rectangle")
 import rect

前两行运行良好。当我输入第三行时,它给出了以下消息:

Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    import rect
ImportError: DLL load failed: %1 is not a valid Win32 application.

我在64位模式下编译了扩展,我使用的每一个软件都至少兼容64位。怎么会发生这样的错误?

我可以知道如何解决这个问题吗?

非常感谢!:-)

4

1 回答 1

1

我最终将所有东西都切换到了 32 位(python、wxPython 等),现在一切都很好。

所以,我真的建议你使用“file rect.pyd”命令来确定你的模块是否真的是 64 位的。

于 2015-10-05T13:39:02.203 回答