【发布时间】:2019-01-13 16:19:47
【问题描述】:
我尝试从c调用python代码,示例代码在我的环境(python3.6)上运行正常,但是当我将它集成到我的程序中时,当我调用Py_Initialize();时出现以下错误:
...
sem_init: Success
Fatal Python error: Can't initialize threads for interpreter
你能提供一些线索来解决这个问题吗?
似乎错误来自here,但我仍然不确定如何避免这种情况。
【问题讨论】:
-
你试过调试它吗?你找到了错误发生的地方。现在您需要检查此时程序的状态,看看哪个值是错误的,然后跟踪它的起源。
-
我试过gdb,但是没有python的源文件,出现
Py_Initialize () at Python/pylifecycle.c:480 480 Python/pylifecycle.c: No such file or directory. (gdb) n等错误 -
这时需要获取对应的来源。它们通常以“源包”形式出现(这取决于您的发行版)。参见例如askubuntu.com/questions/28372/…
-
看来我需要额外的权限才能执行此操作,谢谢。