Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Compiling cython's HelloWorld Example: don't know how to compile C/C++ code on platform

Whenever I try to compile the simpleset cython example

helloworld.pyx

print "Hello World"

setup.py

from distutils.core import setup
from Cython.Build import cythonize
setup(
    ext_modules = cythonize("helloworld.pyx")
)

I am receiving

c:\> python setup.py build_ext --inplace --compiler=c:\cygwin64\bin\gcc
running build_ext
error: don't know how to compile C/C++ code on platform 'nt' with 'c:\cygwin64\bin\gcc' compiler

What could I have done wrong?

P.S. I am using

Python 3.6.0 |Anaconda 4.3.1 (64-bit)| (default, Dec 23 2016, 11:57:41) [MSC v.1900 64 bit (AMD64)] on win32
like image 561
Shaki Avatar asked Jun 07 '17 16:06

Shaki


2 Answers

I don't know Cython, but you can do the following: Add c:\cygwin64\bin\ to PATH. Then, instead of:

python setup.py build_ext --inplace --compiler=c:\cygwin64\bin\gcc

run:

python setup.py build_ext --inplace
like image 172
Vad Sim Avatar answered Sep 21 '22 02:09

Vad Sim


Specifying compiler --compiler= for cython is very tricky. I have the same problem on Ubuntu. The right command that shows no errors is

python setup.py build_ext --inplace
like image 40
Valery Noname Avatar answered Sep 20 '22 02:09

Valery Noname