2013-06-19 16 views
7

Bu birkaç kez sorulmuş ve cevaplandırılmıştır, ancak önceki cevapların hiçbiri benim için işe yaramadığını göreceksiniz - eski tüm cevapları eski haline getirmek için bir şeyler değişmiş gibi hissediyorum. Ya da en azından bir tür kenar durumdayım:python - Windows'ta MinGW32'yi kullanmak için Pip mi alıyorsunuz?

Bir Windows 7 kutusunda, MinGW32 ve Python 2.7 (32 bit sürümü) yükledim (ayrıca bunu Python 2.6 ile denedim ve aynı sonuçları aldım).

  • Yol ortamı değişkeni doğru ayarlanmış.

  • -mno-cygwin numaralı başvuruları kaldırmak için cygwincompiler.py düzenledim. Ve doğru distutils.cfg dosyasını C:\Python27\Lib\distutils içine koydum.

  • Açık olmak gerekirse: distutils.cfg iki satırda [build] compiler=mingw32 içerir.

  • Ayrıca (yalnızca güvende olmak için)benim %HOME% dizine koyun. setup.cfg'u geçerli dizimde pip çalıştırırken yerleştirin. distutils.cfg ile aynı içeriğe sahipler.

Bu pip install cython ve pip install pycrypto hem başarıyla derlemek çünkü tüm çalışma olduğunu biliyoruz.

Ancak gizemli, bazı paketler hala bana unable to find vcvarsall.bat hata vermek. İki örnek: pyproj ve numpy.

Bazen pip MinGW derleyici kullanmak bilir gibi yapıyor ve bazen de vermez? I MinGW ile birlikte MSYS'i kabuk kullanmak durumunda

Ayrıca, sonra sihirli pip install numpy başarılı olur. Ancak pip install pyproj hala bir unable to find vcvarsall.bat ile başarısız oluyor.

Bunu tamamen aynı sonuçlarla birkaç makinede denedim.

Burada neler olup bittiği hakkında bir fikriniz var mı? Neden pip, bazı c modüllerini derlemek için mingw32'yi kullanmayı bilmese de başkalarını değil? Ayrıca, neden pip install numpy MSYS kabuğunun içinde çalışıyor, ancak cmd kabuğunun içinde çalışmıyor?

BONUS: Çok, çok eski cevaplar vcvarsall.bat hatayı çözme yolu olarak Visual Studio 2008 yükleme öneririz. Ancak geçtiğimiz Mayıs ayında, microsoft artık bu yazılımı dağıtmıyor. Herkesin hala VS2008'i indirebileceği bir yer biliyor mu? Soruyorum çünkü MinGW yerine vcvarsall.bat kullanmanın bu sorunu çözmesi olasıdır.

+0

1 Ben aynı sorun var mı: bazen bazen o olamaz, mingw bulabilir pip. – Sam

+0

Tüm VS2008'e ihtiyacınız yok, sadece indirilmek üzere olan Windows SDK'ya ihtiyacınız var. http://www.microsoft.com/en-us/download/details.aspx?id=3138 (bağlantı muhtemelen iyi yaşlanmayacaktır) –

cevap

1

visual studio express 2008 http://download.microsoft.com/download/8/B/5/8B5804AD-4990-40D0-A6AA-CE894CBBB3DC/VS2008ExpressENUX1397868.iso

Yoksa bir öğrenci iseniz, yine Dreamspark aracılığıyla IMHO https://www.dreamspark.com/

Visual Studio 2008 kullanmanızı tavsiye ediyorum Visual Studio 2008 alabilirsiniz Python resmi dağılımları nedeniyle Visual Studio ile derlenmiş ve cpython için "resmi" windows derleyicisi. http://mail.python.org/pipermail/python-list/2010-April/573606.html

Bilginize Python 33 Visual Studio 2010 ile derlenmektedir.

Son olarak, sadece buradan paketleri yükleyebilir: Bir süre bu konu ile mücadele ve bazen pip, MSYS_HOME görmezden görünüyor ve pydistutils.cfg bulamıyorum gördük http://www.lfd.uci.edu/~gohlke/pythonlibs/

0

bu durumda yalnızca başvuru, pydistutils.cfg'u pip install'u çalıştırmadan önce sanalenv'inize elle kopyalamak gibi görünüyor.

bazen bu dosyayı bulur ve bazen yapar değil neden birisi kesin anlamaya, kesinlikle çok iyi olurdu. Ortam değişkenleri MinGW'de aşırı derecede hassas görünüyor.

İlgili konular