これは何度か尋ねられていますが、以前の回答のどれも私のために働いていないことがわかります。古い回答がすべて古くなるように変わったような気がします。または、少なくとも私はいくつかの端的なケースにあります:python - Windows上でMinGW32を使用するようにPipを取得していますか?
Windows 7のボックスで、私はMinGW32とPython 2.7(32ビット版)をインストールしました(これもPython 2.6と同じ結果が得られた)。
パス環境変数が正しく設定されています。
cygwincompiler.py
を編集して、参考文献を-mno-cygwin
に削除しました。正しいdistutils.cfg
ファイルをC:\Python27\Lib\distutils
に入れました。明確になる:
distutils.cfg
は、2行に[build] compiler=mingw32
を含んでいます。%HOME%
ディレクトリにpydistutils.cfg
を入れても安全です。pip
を実行すると、現在のディレクトリにsetup.cfg
を入れてください。彼らはdistutils.cfg
と同じ内容を持っています。
私はpip install cython
とpip install pycrypto
の両方が正常にコンパイルするので、これは働くすべてのことを知っています。
しかし、不思議なことに、一部のパッケージではまだ私にunable to find vcvarsall.bat
というエラーが表示されます。 2つの例があります:pyprojとnumpy。
場合によってはpip
がMinGWコンパイラを使用することがわかっているようですが、時にはそうではありませんか?
また、MinGWに付属のMSYSシェルを使用すると、魔法のようにpip install numpy
が成功します。しかし、pip install pyproj
は、まだunable to find vcvarsall.bat
で失敗します。
私はこれをいくつかのマシンですべて同じ結果を試してみました。
ここで何が起こっているのか誰も知りませんか?なぜpip
はmingw32を使用していくつかのcモジュールをコンパイルすることを知っていますが、他にはありません。また、pip install numpy
はMSYSシェル内で動作しますが、cmdシェル内で動作しないのはなぜですか?
BONUS:多くの多くの古い回答は、vcvarsall.bat
エラーを解決する方法としてVisual Studio 2008をインストールすることを推奨しています。しかし、この5月の時点で、マイクロソフトはもはやこのソフトウェアを配布していません。誰もまだVS2008をダウンロードできる場所を知っていますか?私は、MinGWの代わりにvcvarsall.bat
を使用できることがこの問題を解決する可能性があるので尋ねます。
+1私はまったく同じ問題を抱えています:時にはpipがmingwを見つけることができます。 – Sam
あなたはVS2008のすべてを必要としません、あなたはまだダウンロード可能なWindows SDKが必要です。 http://www.microsoft.com/en-us/download/details.aspx?id=3138(おそらくうまくリンクされません) –