web-dev-qa-db-ja.com

vcvarsall.batは、pythonがVisual Studio 2015(v 14)から欠落してコンパイルするために必要です

Visual Studio 2015 UltimateがインストールされているWindows 10のpython 3.5にnumpyをインストールしようとしています。

短いバージョン:ファイルvcvarsall.batがvs14フォルダーC:\Program Files (x86)\Microsoft Visual Studio 14.0\VCフォルダーにありません。どうして?

長いバージョン:pip install numpyを実行すると、このエラーerror: Unable to find vcvarsall.batが表示されます

このエラーを調査することで、いくつかのパッケージをコンパイルするためにpythonにc ++コンパイラが必要であることがわかりました。そして、python 3.5( error:Unable to find vcvarsall.bat )のコンパイルに使用されたのと同じバージョンのコンパイラを使用してそれを行う必要があります。私のpythonは[MSC v.1900 64ビット(AMD64)]を使用してコンパイルされます-これはvs 14(visual studio 2015)

私の研究をさらに進めると: pip install error:Unable to find vcvarsall.bat that get_build_version() from $python_install_prefix/Lib/distutils/msvc9compiler.py return the version of vs that shoud be to find the path of vcvarsall.bat私にとって、このメソッドは14を返します。したがって、すべてが正しいです。

フォルダーC:\Program Files (x86)\Microsoft Visual Studio 14.0\VCを見ると、vcvarsall.batファイルがありません。

しかし、フォルダーC:\Program Files (x86)\Microsoft Visual Studio 12.0\VCを調べると、vcvarsall.batがあります。

Vcvarsall.batがvs 14.0にないのはなぜですか?

51
Dorin

Visual StudioにC++ Common Toolsがインストールされていることを確認してください。

プログラムと機能-> VS 2015->変更

VS2015 setup

91
Bohdan

Numpyをインストールしようとしたときに、この問題に遭遇しました。 「vcvarsall.bat」の問題を修正することはできませんでしたが、事前にコンパイルされたライブラリをここからダウンロードできることがわかりました: http://www.lfd.uci.edu/~gohlke/pythonlibs/ 必要なライブラリをダウンロードし、ダウンロードした.whlファイルがある場所に移動して、コマンドプロンプトウィンドウを開きます。 'pip install [whl file name]'を実行します。これにより、コンパイルの問題なくライブラリがインストールされます。

6
R21

Microsoft Visual C++ビルドツールをダウンロードしました リンクはこちら で、すべてうまくいきました。

2
Bhanuday Birla

python 2.7(VS 2015でコンパイル)を使用してujsonパッケージをビルドしようとしたときに、この問題に遭遇しました。

  • vcvarsall.bat:vsvars32.bat(同じディレクトリ-「c:\ Program Files(x86)\ Microsoft Visual Studio 14.0\Common7\Tools」から)をvcvarsall.batにコピーしてみます。ビルドに必要なのはそれだけです
  • 別の問題は、関数get_build_version()(distutils/msvc9compiler.py)でVSバージョンを検出していることです。 VSの正しいバージョンを返すには、この関数を変更する必要があります。

この行があります:

majorVersion = int(s[:-2]) - 6

majorVersionを13に設定しますが、VS 2015の正しいバージョンは14です。したがって、次のように2行追加する必要があります。

if majorVersion == 13:
    majorVersion = 14 
1
Petr Peňás

エラーに直面している場合、任意のPython 2.7モジュールのインストール中

error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat)

Windows OSソリューション

最も簡単な解決策は次のとおりです。

  • URLhttp://aka.ms/vcpython27を参照します
  • ダウンロードMicrosoft Visual C++ Compiler for Python 2.7
  • スナップショット:

vcpython27

  • バージョン:9.0.0.30729
  • ファイル名:VCForPython27.msi
  • 公開日:2014年9月29日
  • ファイルサイズ:83.8 MB
  • 詳細:

    • このパッケージには、Pythonパッケージ用のバイナリホイールを生成するために必要なコンパイラとシステムヘッダーのセットが含まれています。 Pythonパッケージのバイナリホイールは、Cコンパイラにアクセスすることなく、任意のWindowsシステムにインストールできます。

    • このコンパイラパッケージが必要な場合に表示される一般的なエラーメッセージは、vcvarsall.batが見つかりません

    • このメッセージは、インストールされているPythonパッケージにネイティブ拡張モジュール(.pyd)のソースコードが含まれているが、モジュールのビルド済みコピーがないために表示されます。 pythonwheels.comで強調表示されているPythonパッケージは、開発者によって既にビルドされたバイナリを含むように更新されていますが、多くはまだソースコードとしてのみ利用可能です。

    • このコンパイラパッケージは完全にサポートされておらず、Python 2.7と完全に互換性のある最新バージョンのスナップショットを表します。最新のセキュリティとバグ修正については、Python 2.7と直接インターフェースしない開発作業には、Microsoft Visual Studioの最新バージョンを使用してください。

  • システム要件:
    • サポートされているオペレーティングシステム:Windows 7、Windows 8、Windows 8.1
    • Microsoft Visual C++ 2008 SP1再頒布可能パッケージ(x86、x64)Windows 8以降では、Microsoft .NET Framework 3.5が必要です。インストール手順については、こちらをご覧ください。
    • ディスク容量の要件:インストールには380メガバイト(MB)のハードディスク容量が必要です。
    • Pythonパッケージsetuptools 6.0以降は、Pythonがこのコンパイラパッケージを自動的に検出するために必要です。ビルド済みのバイナリパッケージの作成にはwheelが推奨されます。
  • インストール手順:
    • インストールとアンインストールコンパイラパッケージはデフォルトで現在のユーザーにのみインストールされ、管理者権限は不要です。マシンのすべてのユーザーにインストールするには、昇格したコマンドプロンプトからmsiexec/i ALLUSERS = 1を実行します。
    • Python配布ツールPythonパッケージの開発者は、このコンパイラをダウンロードして使用し、Pythonパッケージのバイナリホイールを作成してPyPIにアップロードする必要があります。 wheelパッケージをインストールし、setuptools 6.0以降に更新し、ビルドプロセスにsetup.py bdist_wheel uploadを追加すると、正しいファイルが生成されます(32ビットバージョンと64ビットバージョンの両方でこれを行うことを忘れないでください)。
    • インストールするPythonパッケージにホイールがない場合、このコンパイラパッケージをご使用のマシンにインストールできます。コンパイラーをインストールし、setuptools 6.0以降に更新したら、pip installを使用してPythonパッケージをビルドおよびインストールできます。複数のマシンを管理していて、それらすべてにPythonパッケージをインストールする必要がある場合、wheelパッケージをインストールし、pip wheelを使用して、このパッケージを必要とせずにマシンにインストールできるホイールを作成する必要があります。
  • ローカルホストにパッケージをインストールします。
  • 必要なPython 2.7モジュールをエラーなしで正常にインストールします。
0
DebanjanB

同じ問題が発生しました(Windows 7、Python 3.4、pip 7.1)

pip install mysqlclient
(...)
error: Unable to find vcvarsall.bat

私はこれらの指示に従いました: https://www.linkedin.com/Pulse/resolving-python-error-unable-find-vcvarsallbat-bhanu-pratap-singh/

次に、pipを9.0.1にアップグレードしました

python -m pip install --upgrade pip

再試行:

pip install mysqlclient

そしてボイラ:

Successfully installed mysqlclient-1.3.12
0
azathoth