Python SWIG MinGW - setup.py builds the source and the pyd file, python cannot find the module. Python SWIG MinGW - setup.py编译源文件和pyd文件,python找不到模块。

2024-03-29 00:35:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用MinGW来构建一个使用Swig的PythonC模块。当我告诉Python加载模块时,它失败并抱怨Python找不到模块。在

有趣的是,该模块与我在中运行Python的目录相同,该模块名为_mod.pyd。(我还生成了一个mod.py文件,该文件在同一路径中使用_mod.pyd。)

你不相信真让人沮丧!在

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "mod.py", line 25, in <module>
    _mod = swig_import_helper()
  File "mod.py", line 21, in swig_import_helper
    _mod = imp.load_module('_mod', fp, pathname, description)
ImportError: DLL load failed: The specified module could not be found.

它构建得很干净(我使用的是distutils),并且我所有的dll都位于一个已经暴露到PATH的目录中。在

我使用的是WindowsXP+MinGW平台(最新稳定的MinGW)。在

谢谢!在


Tags: 模块文件inpyimport目录helpermod
3条回答

你试过了:

python setup.py build compiler=mingw32

是吗?在

这是一个常见的问题。您可能使用的是pythonforwindows的二进制版本,它是用MSC而不是MinGW编译的。当您从命令行运行它时,您可以看到它在看解释器所说的内容。如果是这样,你有两个选择:

  • 用MSC或
  • 用MinGW编译python解释器。在

对于后一种选择,好吧,祝你好运。我从来没能做到。在

我在MinGW网站的“如何创建Python扩展?”在

http://www.mingw.org/wiki/FAQ

我知道pexports有一个诀窍,但是,我已经测试了几次,几乎没有成功(我记得)。有没有其他人能成功地做到这一点?在

干杯

ct

更新

我还找到了这个教程->;http://boodebr.org/main/python/build-windows-extensions 本教程->{a3}

我想这就像跑步一样简单:“设置.py建筑-c mingw32“

相关问题 更多 >