繁体   English   中英

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

[英]Python module created with Boost.Python won't be imported

我有一个很大的C ++模块,带有使用Boost.Python的Python 3绑定,可以在macOS上使用CMake将其编译为.so文件。

当我尝试将其导入REPL时,似乎一切正常:

>>>import myModule
>>>

但是,一旦我运行import语句,Python的著名火箭图标就会出现在Dock中,并停留在那里跳跃几分钟,然后停下来。 显然,那时,我无法访问模块中定义的任何功能,因此导入看起来不错,但实际上不执行任何操作。

我尝试在控制台中查看,发现每次import myModule ,都会得到两个launchservicesd[83]: SecTaskLoadEntitlements failed error=22 它给我带来了这个那个相关的问题,但是我找不到确切的问题是什么。

C ++模块非常庞大,因此我只是无法查看代码并找到问题,因此我希望获得有关至少如何调试该问题的任何提示。

我可以建议以下步骤:

  • 尝试通过本地python会话导入该模块。 因此,运行交互式python解释器,然后“导入myModule”。

如果不好,请尝试检查:

  • 是与myMoudle链接的python版本,与二手解释器相似
  • 检查建筑设计师是否相同
  • 检查您是否可以加载甚至简单的boost.python示例模块

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM