从自定义构建的Python导入自定义模块失败

Importing a custom module from a custom-built Python fails

本文关键字:自定义 模块 失败 导入 构建 Python      更新时间:2023-10-16

我遇到了一个奇怪的问题。我正在建立一个项目与嵌入式Python解释器。我已经从源代码(3.3.2)中重建了Python,然后将Python库以及。dll复制到我的应用程序再分发文件夹中。

奇怪的是,当我能够导入.py模块时,我重新编译的解释器无法导入.pyd自定义构建的文件。相同的文件导入文件从Python正规发行版启动解释器。

这是我的代码:

Py_SetPythonHome((wchar_t *)wideBasePath.c_str());
Py_InitializeEx(0);
PyRun_SimpleString("import MClientAPI");

它失败说明无法找到MClientAPI,而我有一个_MClientAPI。Pyd文件可用。我试过把它移到site-packages, libs或根文件夹下,没有区别。

任何建议吗?

我发现,如果你想导入一个pyd文件,并且你处于调试模式,无论你输入什么,Python总是会寻找一个_d后缀文件,在我的例子中,MClientAPI_d.pyd