使用Python 3.4进行Cython导入错误0xC0000005

时间:2015-10-02 14:19:30

标签: python numpy cython python-3.4

我跟着 http://docs.cython.org/src/tutorial/numpy.htmlhttp://www.scipy-lectures.org/advanced/interfacing_with_c/interfacing_with_c.html#id12使用静态类型和cython加速一些慢速代码,减少约200倍的时间,非常高兴。如果我使用Python 2.7,那就很棒了。

但是我真的想用3.4。当我使用Python 3.4运行setup.py时,似乎编译好了,但是我在0xC0000005退出代码时遇到了崩溃,只是试图在Python 3.4中导入该函数。

以下是一个具有相同问题的超级简单示例。

我的setup.py:

from distutils.core import setup, Extension
import numpy
from Cython.Distutils import build_ext

ext = Extension('hello_world', ['hello_world.pyx'], include_dirs=[numpy.get_include()])
setup(
    cmdclass={'build_ext': build_ext},
    ext_modules=[ext]
)

以及cythonize的代码:

import numpy as np
cimport numpy as np

def hello_world():
    print('Hello world')

我正在使用命令进行编译:

python setup.py build_ext --inplace

Python仅崩溃:

import hello_world

我在Windows 7上使用cython 0.22和numpy 1.9.2。从hello_world中删除numpy import和cimport“修复”了这个问题。关于如何让它与numpy一起工作的任何想法,因为真正的代码依赖于它?谢谢。

  • 编辑,我也在使用Anaconda

0 个答案:

没有答案