4

Compiling .pyx files was working fine but suddenly it started raising error when I type:

python setup.py build_ext --inplace

I get the error:

c:\Python27\cython\helloworld>python setup.py build_ext --inplace
running build_ext
cythoning hello.pyx to hello.c
Traceback (most recent call last):
  File "setup.py", line 8, in <module>
    ext_modules = [Extension("hello", ["hello.pyx"])]
  File "C:\Python27\lib\distutils\core.py", line 152, in setup
    dist.run_commands()
  File "C:\Python27\lib\distutils\dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "C:\Python27\lib\site-packages\Cython\Distutils\build_ext.py", line 163,
in run
    _build_ext.build_ext.run(self)
  File "C:\Python27\lib\distutils\command\build_ext.py", line 340, in run
    self.build_extensions()
  File "C:\Python27\lib\site-packages\Cython\Distutils\build_ext.py", line 170,
in build_extensions
    ext.sources = self.cython_sources(ext.sources, ext)
  File "C:\Python27\lib\site-packages\Cython\Distutils\build_ext.py", line 317,
in cython_sources
    full_module_name=module_name)
  File "C:\Python27\lib\site-packages\Cython\Compiler\Main.py", line 605, in com
pile
    return compile_single(source, options, full_module_name)
  File "C:\Python27\lib\site-packages\Cython\Compiler\Main.py", line 546, in com
pile_single
    return run_pipeline(source, options, full_module_name)
  File "C:\Python27\lib\site-packages\Cython\Compiler\Main.py", line 386, in run
_pipeline
    import Pipeline
  File "C:\Python27\lib\site-packages\Cython\Compiler\Pipeline.py", line 7, in <
module>
    from Visitor import CythonTransform
  File "Visitor.py", line 9, in init Cython.Compiler.Visitor (Cython\Compiler\Vi
sitor.c:12838)
  File "C:\Python27\lib\site-packages\Cython\Compiler\Nodes.py", line 6, in <mod
ule>
    cython.declare(sys=object, os=object, copy=object,
AttributeError: 'module' object has no attribute 'declare'

I tried running it on a simple .pyx file helloworld:

def say_hello_to(name):
    print "Hello %s!" %name

with the setup.py:

from distutils.core import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext

setup(
  name = 'Hello world app',
  cmdclass = {'build_ext': build_ext},
  ext_modules = [Extension("hello", ["hello.pyx"])]
)

It already worked several times, something has changed but as I Googled and searched the issue I couldn't find any information. I'm using Python 2.7 64 bits, latest version of Cython and to compile the file I use Windows SDK C/C++ compiler and prepare the environment by running:

C:\Program Files\Microsoft SDKs\Windows\v7.0>set DISTUTILS_USE_SDK=1
C:\Program Files\Microsoft SDKs\Windows\v7.0>setenv /x64 /release

Any ideas of what might have happened? Tnx in advance!

2

4 Answers 4

7

I got the same error when running from a python script:

os.system("python setup.py build_ext --inplace")

while

python setup.py build_ext --inplace

worked from command promt.

The reason was that the name of my test package was "cython"... stupid me

Sign up to request clarification or add additional context in comments.

Comments

2

I have had the same error. Worked on it for one whole day until I have realized that I have followed some blog entry to create a cython.py file in my directory holding some information how to compile. I do not recall where I found this but by removing this file everything works fine

Comments

0

I'm not sure this helps, but when I got this error I deleted all .pyc files and ran the script again via IDLE (opened in IDLE and clicked F5) and then it worked just fine.

Comments

0

This is an old post, but also one that still tops search results, so... for anyone stumbling on this - just doing pip uninstall Cython && pip install Cython worked for me.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.