Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to install cython an Anaconda 64 bits with Windows 10?

It's all in the title, does someone have a step by step method to install cython and run it on Anaconda 64 bits on Windows 10? I search for hours and there are a lot of tutorials... For things that I wasn't able to get or do on windows 10. I try to follow all those methods and more but in vain for now: https://www.ibm.com/developerworks/community/blogs/jfp/entry/Installing_Cython_On_Anaconda_On_Windows?lang=en

https://github.com/cython/cython/wiki/CythonExtensionsOnWindows

Conda install is done but the problem is to link the compiler to python, all the method using windows SDK and espescially the SDK command prompt are outdated, this prompt doesn't exist on Visual studio 2015 and the setenv function doesn't exist anymore either so impossible to execute 'setenv \x64 \release' and without this step the code doesn't work.

The other methode with MinGW return an error:

C:\MinGW\bin\gcc.exe -shared -s build\temp.win-amd64-3.6\Release\hello.o build\temp.win-amd64-3.6\Release\hello.cp36-win_amd64.def -LC:\Users\Utilisateur\Anaconda3\libs -LC:\Users\Utilisateur\Anaconda3\PCbuild\amd64 -lpython36 -lmsvcr140 -o C:\Users\Utilisateur\Documents\hello.cp36-win_amd64.pyd
c:/mingw/bin/../lib/gcc/mingw32/6.3.0/../../../../mingw32/bin/ld.exe: cannot find -lmsvcr140
collect2.exe: erreur : ld a retourné 1 code d'état d'exécution
error: command 'C:\\MinGW\\bin\\gcc.exe' failed with exit status 1

so I don't know what to do next.

Help please.

A desperate student

like image 924
pdzx Avatar asked Oct 17 '18 22:10

pdzx


People also ask

Does Anaconda have Cython?

If you do want to use Anaconda, then you can use Cython using one of the anaconda modules (module load anaconda2.

Does Cython work on Windows?

Cython is written in Python and C and works on Windows, macOS, and Linux, producing source files compatible with CPython 2.6, 2.7, and 3.3 and later versions. Cython 3.0.


1 Answers

Ok I solved the problem on Windows 10 with Anaconda using python 3.6.5 and MSC v.1900 64 bit (informations given by running :

import sys
sys.version

so here is the method:

1: install cython by running conda install -c anaconda cython in Anaconda prompt

2: go in C:\Users\Utilisateur\Anaconda3\Lib\distutils or wherever your distutils library is the create a distutils.cfg file (by using the notepad) and put

[build]           
compiler=mingw32 

in it

3: get the latest version of Mingw-w64 (not just Mingw which support just 32 bits) at https://sourceforge.net/projects/mingw-w64/files/ and install it

4: add C:\Program Files (x86)\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin to your Path here is a link on how to do that on windows 10: https://www.architectryan.com/2018/03/17/add-to-the-path-on-windows-10/

5: install libpython and m2w64-toolchain in your anaconda envirement by running conda install -c anaconda libpython and conda install -c msys2 m2w64-toolchain It come from these webpage https://python-at-risoe.pages.windenergy.dtu.dk/compiling-on-windows/common_errors.html and should correct the corresponding errors

6: try the first or second test on this page http://docs.cython.org/en/latest/src/quickstart/build.html both were working for me after step 5

Hope it will help!

like image 166
pdzx Avatar answered Oct 13 '22 14:10

pdzx