使用创建的Python模块Boost.Python不会被导入

2024-06-03 14:26:23 发布

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

我有一个大的C++模块,其中使用Python 3绑定Boost.Python,我在macOS上使用CMake编译成.so文件。在

当我试图在REPL中导入它时,一切似乎都很正常:

>>>import myModule
>>>

但是,只要我运行import语句,Python著名的火箭图标就会出现在Dock上,并在那里停留几分钟,然后停止。显然,我无法访问模块中定义的任何函数,因此导入看起来很好,但实际上没有做任何事情。在

我试着在控制台中查找,发现每当我import myModule时,我得到两个launchservicesd[83]: SecTaskLoadEntitlements failed error=22。 它给我带来了this和{a2}相关的问题,但我找不到确切的问题是什么。在

< C++模块非常庞大,所以我不能查看代码并找出问题,因此我想问一下关于调试问题的任何提示。在


Tags: 模块文件importcmakeso定义macos语句
1条回答
网友
1楼 · 发布于 2024-06-03 14:26:23

我可以建议以下步骤:

  • 尝试通过本地python会话导入该模块。所以,运行交互式python解释器,并“import myModule”。在

如果不好,请检查:

  • 与myMoudle相关联的python版本是否与使用的解释器相似
  • 检查构建架构是否相同
  • 检查你是否可以加载简单的boost.python示例模块

如果可以,请检查是否在python代码中正确设置了模块搜索路径。在

相关问题 更多 >