2013-08-20 1 views
5

Ich habe alles versucht gegeben und die Tutorials zeigen alle in die gleiche Richtung über die Verwendung von Mingw als Compiler in Python anstelle von Visual C++.Python nicht distutils.cfg

Ich habe visuelle C++ und Mingw beide. Das Problem kam, als ich mit pip installieren wollte. Es gab immer Unable to find vcvarsall.bat

So wie pro Anregung ich eine Datei erstellt distutils.cfg unter folgendem Pfad c:/python27/Lib/distutils/ und hinzugefügt, um die folgenden zwei Zeilen:

[build] 
compiler=mingw32 

jedoch diese Datei überhaupt keine Wirkung hat. Derselbe Fehler ist weiterhin bei der Verwendung von Pip vorhanden. Ich versuche gerade numpy übrigens zu installieren, obwohl der Fehler früher auch kam.

+0

Haben Sie eine Lösung für dieses Problem gefunden? – Oz123

+0

@ Oz123 Nö leider außer Sie können die inoffiziellen Binärdateien von der Website in der Antwort unten verwenden, aber das ist nicht die wirkliche Lösung, die ich vermute. – Sohaib

+0

Nun, ja, es ist nicht die beste Lösung ... Hoffen wir, dass Python hier verbessert ... – Oz123

Antwort

0

Schwierige Lösung (Gebäude mit der C/C++ Compiler)

Sind Sie auf Windows 32bit oder 64bit? Spezifizieren Sie den Build beim Kompilieren? Folgendes in der Shell oder bash Zum Beispiel tun:

python setup.py build --compiler==mingw32 
python setup.py install 

einfachere Lösung (Verwendung vorgefertigte Binärdateien)

Wenn Sie das Programm nicht kompilieren müssen, können Sie die inoffizielle verwenden Windows-Binärdateien von here

1

Kostet mich mehrere Stunden um dies herauszufinden, aber funktioniert nun wie ein Zauber. Ich bin auf Windows 64bit und mit einer wissenschaftlichen Python-Distribution Enthought Canopy.

  1. Sicherstellen, dass haben Sie MinGW und die Compiler installieren Sie benötigen (C, C++, Fortran ..)

  2. hinzufügen C:\MingW\bin zu Ihrer PATH in Umgebungsvariablen

  3. In C:\Users\MyName\AppData\Local\Enthought\Canopy32\App\appdata\canopy-1.6.2.3262.win-x86\Lib\distutils, mit Notepad ++ erstellen oder similiar eine neue Datei distutils.cfg

schreiben und speichern:

[build] 
compiler = mingw32 

[build_ext] 
compiler = mingw32