Pendant le processus de résolution de ces problèmes et des problèmes suivants, j'ai écrit une recette dans ce fil . Je le reproduis ici au cas où cela pourrait être utile pour d'autres:
Recette étape par étape pour compiler des extensions cython 64 bits avec python 2.6.6 avec le compilateur mingw dans win 7 64 bits
Installer le compilateur mingw
1) Installer tdm64-gcc-4.5.2.exe pour la compilation 64 bits
Appliquer le correctif à python.h
2) Modifier python.h dans C: \ python26 \ include comme indiqué dans
http://bugs.python.org/file12411/mingw-w64.patch
Modifier distutils
Edit 2013: Remarque que dans python 2.7.6 et 3.3.3 -mno-cygwin a finalement été supprimé, donc l'étape 3 peut être ignorée .
3) Eliminer tous les paramètres -mno-cygwin de l'appel à gcc dans la classe Mingw32CCompiler dans Python26 \ Lib \ distutils \ cygwinccompiler.py
4) Dans le même module, modifiez get_msvcr () pour renvoyer une liste vide au lieu de ['msvcr90 '] lorsque msc_ver ==' 1500 '.
Produisez le fichier libpython26.a (non inclus dans python 64 bits)
Edit 2013: les étapes 5 à 10 suivantes peuvent être ignorées en téléchargeant et en installant libpython26.a depuis gohlke .
5) Obtenez gendef.exe à partir de mingw-w64-bin_x86_64- mingw_20101003_sezero.zip (gendef.exe n'est pas disponible dans la distribution tmd64. Une autre solution consiste à compiler gendef à partir des sources ...)
6) Copiez python26.dll (situé à C \ windows \ system32) dans le répertoire utilisateur (C: \ Users \ myname)
7) Produisez le fichier python26.def avec:
gendef.exe C: \ Users \ mon nom \ python26.dll
8) Déplacez le fichier python.def produit (situé dans le dossier à partir duquel gendef a été exécuté) vers le répertoire utilisateur
9) Produisez la libpython.a avec:
dlltool -v --dllname python26.dll --def C: \ Users \ myname \ python26.def --output-lib C: \ Users \ myname \ libpython26.a
10) Déplacez le libpython26.a créé vers C: \ Python26 \ libs
Produisez votre extension .pyd
11) Créez un fichier test hello.pyx et un fichier setup.py comme indiqué dans le tutoriel cython ( http://docs.cython.org/src/quickstart/build.html )
12) Compilez avec
python setup.py build_ext --inplace
Terminé!