0

我有一个由 Swig 生成的 Python 包装器(到 C 库)。

让单元测试在 PyDev 中运行愉快。

项目结构遵循 PyBuilder 建议的设置:

   |-src
      |-主要
          |-蟒蛇
                |-A.py
                |-_A.so
      |-单元测试
          |-蟒蛇
                |-A_tests.py

尝试运行pyb时,出现以下错误:

致命的 Python 错误:PyThreadState_Get:没有当前线程
中止陷阱:6

注意: 如果我将 A 更改为纯 Python 模块,则一切正常。

必须缺少与加载该 .so 文件相关的某些内容(步骤)。

对不起,像这样的新手问题。任何帮助将不胜感激。

4

1 回答 1

0

您是否可以为另一个 python 版本构建 .so 库?PyBuilder 不会对共享对象做任何特别的事情,尤其是在运行单元测试时。

所以尝试运行ldd _A.so并查看它是否与您正在使用的解释器匹配pyb

于 2015-01-07T07:58:12.593 回答