使用python-dbg调试Cython失败,带有未定义的符号:Py_InitModule4_64

时间:2015-07-07 07:49:32

标签: debugging cython dbg

我正在尝试从官方Cython页面的instructions之后调试一个小型的cython项目。但命令:

python-dbg setup.py build_ext --inplace

因以下错误而失败。我已经看到了对类似问题的回复here但我不认为它适用于我,因为我正在运行通过apt-get安装的Cython。任何帮助将非常感激。

追踪(最近一次通话):   文件" build.py",第4行,in     来自Cython.Build导入cythonize

文件" /usr/lib/python2.7/dist-packages/Cython/Build/ init .py",第1行,来自Dependencies import cythonize

File" /usr/lib/python2.7/dist-packages/Cython/Build/Dependencies.py",第51行,来自Cython.Compiler.Main import Context,CompilationOptions,default_options

File" /usr/lib/python2.7/dist-packages/Cython/Compiler/Main.py" ;,第17行,来自扫描导入PyrexScanner,FileSourceDescriptor ImportError:/usr/lib/python2.7/dist-packages/Cython/Compiler/Scanning.so:未定义的符号:Py_InitModule4_64 [35101 refs]

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。 在本文中解释了它的原因:

  

问题[..]是python-dbg二进制文件但是与之不兼容   模块没有用它们编译

http://hustoknow.blogspot.de/2013/06/why-your-python-program-cant-start-when.html

我的解决方案是卸载cython(通过pip安装),克隆cython github repo并使用python-dbg手动安装:

git clone git@github.com:cython/cython.git
cd cython
sudo python-dbg setup.py  install

之后我能够在自己的代码中python-dbg setup.py build_ext --inplace