在OSX下使用SWIG时出现致命的Python错误

2024-05-23 19:45:22 发布

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

我在使用SWIG生成的Python接口时遇到了问题(我有osx10.11.12)。在编译并链接所有内容之后:

swig -python erk_integrator.i
gcc -c -fPIC -O3 model.c auxiliary_functions.c timing_functions.c
gcc -c -fPIC -O3 erk_integrator.c erk_integrator_wrap.c -I. -I/usr/local/include/python2.7
gcc -lpython -dynamiclib model.o erk_integrator.o erk_integrator_wrap.o auxiliary_functions.o timing_functions.o -o _erk_integrator.so

我尝试了一个测试脚本,但Python抛出了一个致命错误:

/usr/local/bin/python test_erk.py

Fatal Python error: PyThreadState_Get: no current thread
Abort trap: 6

但当我跑的时候

/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 test_erk.py 

一切正常。但是,我需要使用/usr/local/bin/python(来自自制)而不是系统python。你知道吗

我觉得连接步骤出了问题。非常感谢你的帮助!你知道吗


Tags: pytestmodelbinusrlocalintegratorfunctions