web-dev-qa-db-ja.com

エラー:vcvarsall.batが見つかりません

私はPythonパッケージ dulwich をインストールしようとしました。

pip install dulwich

しかし、私は不可解なエラーメッセージを受け取ります。

error: Unable to find vcvarsall.bat

私が手動でパッケージをインストールしようとするならば、同じことが起こります:

> python setup.py install
running build_ext
building 'dulwich._objects' extension
error: Unable to find vcvarsall.bat
835
okada

Update:コメントは、ここの指示が危険な可能性があることを指摘しています。 Visual C++ 2008 Expressエディションまたは専用の Python用Microsoft Visual C++コンパイラdetails )およびNOT以下の元の回答を使用します。元のエラーメッセージは、必要なバージョンのVisual C++がインストールされていないことを意味します。


Windowsインストールの場合:

パッケージのインストールのためにsetup.pyを実行している間、Python 2.7はインストールされたVisual Studio 2008を検索します。VS90COMNTOOLS環境変数に正しいパスを設定することにより、Python setup.pyを呼び出す前。

インストールされているVisual Studioのバージョンに基づいて、次のコマンドを実行します。

  • Visual Studio 2010(VS10):SET VS90COMNTOOLS=%VS100COMNTOOLS%
  • Visual Studio 2012(VS11):SET VS90COMNTOOLS=%VS110COMNTOOLS%
  • Visual Studio 2013(VS12):SET VS90COMNTOOLS=%VS120COMNTOOLS%
  • Visual Studio 2015(VS14):SET VS90COMNTOOLS=%VS140COMNTOOLS%

警告:以下に記載されているように、pythonモジュールをコンパイルしようとしている場合、この回答は機能しそうにありません。

詳細については、 WindowsのPython 2.7のlxmlのビルド を参照してください。

682
fmuecke

私はその解決策を見つけました。私は 'amara'のインストールとまったく同じ問題とエラーを抱えていました。 mingw32をインストールしましたが、distutilsを設定する必要がありました。

  1. 私はすでにインストールされているPython 2.6を持っています。
  2. 私はC:\programs\mingw\にmingw32をインストールしました
  3. Mingw32のbinディレクトリを環境変数に追加します。 _ path _ c:\programs\MinGW\bin;を追加します。
  4. C:\Python26\Lib\distutils\distutils.cfgにある distutils.cfg ファイルを編集し(存在しない場合は作成します):

    [build]
    compiler=mingw32
    
  5. easy_install.exe amaraを実行してください。

新しいcmd.exeを開いて環境が設定されていることを確認してください。

224
ninMonkey

http://www.lfd.uci.edu/~gohlke/pythonlibs/ からコンパイル済みバージョンをインストールできます。

221
VolodymyrB

どうしたの? Pythonモジュールは、CまたはC++で記述された partにすることができます (通常は速度を上げるため)。そのようなパッケージをPip(またはsetup.py)でインストールしようとすると、そのC/C++をソースからコンパイルする必要があります。箱から出して、PipはあなたにMicrosoft Visual C++がインストールされているコンパイラを真剣に思わせるでしょう。あなたがそれを持っていないならば、あなたはこの不可解なエラーメッセージ「エラー:vcvarsall.batを見つけることができません」を見るでしょう。

規定された解決策は、Microsoft Visual C++または MinGW (オープンソースプロジェクト)のいずれかのC/C++コンパイラをインストールすることです。ただし、どちらかをインストールして構成するのは非常に困難です。 (編集2014年:マイクロソフトは特別な C++コンパイラ をPython 2.7用に公開しました)

最も簡単な解決策は、人気のあるPythonパッケージにChristoph GohlkeのWindowsインストーラ(.msi)を使うことです。彼はPython 2.xと3.x、32ビットと64ビット用のインストーラを構築しています。 http://www.lfd.uci.edu/~gohlke/pythonlibs/ からダウンロードできます。


あなたも "エラー:vcvarsall.batを見つけることができません"と思っているならば、それはそれに置き換えて http://bugs.python.org/issue2943 でバグにコメントしてください。より親切でユーザーフレンドリーなメッセージ。

比較のために、RubyはパッケージマネージャGemを同梱し、準公式のC/C++コンパイラ、DevKitを提供しています。あなたがそれなしでパッケージをインストールしようとするならば、あなたはこの役に立つフレンドリーで役に立つメッセージを見ます:

ビルドツールを含むようにPATHを更新するか、 http://rubyinstaller.org/downloads からDevKitをダウンロードし、 http://github.com/oneclick/rubyinstaller/wiki/の指示に従ってください。開発キット

https://stackoverflow.com/a/13445719/284795 で、Pythonのパッケージ化についての長い解説を読むことができます。

71
Colonel Panic

Pythonをビルドするのに使われていたコンパイラと互換性のあるMicrosoftコンパイラをインストールする必要があります。つまり、Visual C++ 2008(またはそれ以降の いくつかの調整 )が必要です。

Microsoftは現在、忘れられないURLで、Python拡張機能をコンパイルできるようにバンドルされたコンパイラとヘッダjustを提供しています。

Python 2.7用Microsoft Visual C++コンパイラ

http://aka.ms/vcpython27

これは比較的小さなパッケージです。ダウンロードに85MB、管理者権限なしでインストール可能、再起動は不要。名前は少し誤解を招くようなものです。コンパイラは、Python 2.7だけでなく、もともとVisual C++ 2008でコンパイルされたすべてのPythonバージョンで機能します。

Pythonの対話型プロンプトを起動するかsys.versionを印刷する場合は、MSCのバージョン文字列を探します。それがMSC v.1500であるなら、あなたはこのツールを使うことができます。

distutilsリストへの最初の発表 から:

Microsoftは、人々がWindows上でC拡張モジュールを構築し配布することをより簡単にするためにPython 2.7用のコンパイラパッケージをリリースしました。 Microsoft Visual C++ Compiler for Python 2.7(別名VC9)は、以下から入手できます。 http://aka.ms/vcpython27

このパッケージには、Python 2.7 32ビットおよび64ビット用のC拡張モジュールを構築するために必要なすべてのツールとヘッダーが含まれています(一部の拡張モジュールには、OpenSSLやlibxml2などのサードパーティー依存関係が含まれません)。 Visual C++ 2008でビルドされた他のバージョンのPythonもサポートされているので、 "Python 2.7"は単なる宣伝になります - 2.6と3.2でうまく動作するでしょう。

setuptools 6.0以降 をインストールする必要があることに注意してください(ダウンロードページのシステム要件に記載されています)。インストールしているプロジェクトはdistutilsではなくsetuptools.setup()を使用しなければなりません、さもなければ自動検出は機能しません。

Microsoftは、自動化されたスクリプトで簡単に参照できるように、URLを安定させておくことを望んでいると述べています。

63
Martijn Pieters

私はこれと同じ問題を抱えていたので、同じ問題を抱えている他の誰かに役立つことを願って私の話をここで話し、私が費やした数時間を節約します

私は窓7箱の中にmingw(g ++(GCC)4.6.1)とpython 2.7.3を持っています、そして私はPyCryptoをインストールしようとしています。

Setup.py installを実行すると、すべてこのエラーで始まりました。

error: Unable to find vcvarsall.bat

Mingwを最適なコンパイラとして指定することで、エラーをグーグルした後で簡単に解決できます。

setup.py install build --compiler=mingw32

問題はそれから私が別のエラーを得たということです:

configure: error: cannot run C compiled programs.

私のアンチウイルスが、新しくコンパイルされた.exeの実行をブロックしていたことがわかりました。アンチウイルスの「常駐シールド」を無効にして次のエラーに進みました。

cc1.exe: error: unrecognized command line option '-mno-cygwin' 
error: command 'gcc' failed with exit status 1

「少々古いバージョンのMinGWをインストールするか、あなたのPythonディレクトリにあるdistutils\cygwinccompiler.pyを編集して-mno-cygwinのすべてのインスタンスを削除するかのどちらかです。」 (from ここ

今、私はついに仕事を始めることができます。

54
fpessoa

VCコンパイラを探しているように見えます。したがって、msysがあるので、-c mingw32を使ってコンパイラタイプに言及することを試みることができます。

python setup.py install -c mingw32
23
YOU

私はPython 2.73とwindows 7を持っています。私のために働いた解決策は次のとおりです。

  1. Mingw32のbinディレクトリを環境変数に追加しました: _ path _ C:\programs\mingw\bin;を追加
  2. distutils.cfg を含むC:\Python27\Lib\distutils\distutils.cfgにあります。

    [build]
    compiler=mingw32
    

MinGWがもう-mno-cygwinフラグを認識しないようにするには、C:\ Python27\Lib\distutils\cygwincompiler.pyの322行目から326行目のフラグを削除します。

  self.set_executables(compiler='gcc -O -Wall',
                         compiler_so='gcc -mdll -O -Wall',
                         compiler_cxx='g++ -O -Wall',
                         linker_exe='gcc',
                         linker_so='%s %s %s'
                                    % (self.linker_dll, shared_option,
                                       entry_point))
20
user61629

インストールしようとしているパッケージのsetup.pyファイルを調べてください。古いパッケージの場合は、distutils.core.setup()ではなくsetuptools.setup()をインポートしている可能性があります。

私はこれらの要因の組み合わせでこれに遭遇しました(2015年)。

  1. Python 2.7用Microsoft Visual C++コンパイラfrom http://aka.ms/vcpython27

  2. distutils.core.setup()を使用する古いパッケージ

  3. pipを使用せずにpython setup.py buildを実行しようとしています。

最近のバージョンのpipを使用している場合、たとえsetup.pyがdistutilsを要求していても、パッケージにsetuptoolsを使用させる(monkeypatch)ことになります。ただし、pipを使用しておらず、代わりにpython setup.py buildを実行しているだけの場合、ビルドプロセスではdistutils.core.setup()が使用されます。これは、コンパイラのインストール場所を認識しません。


溶液

ステップ1: 適切なVisual C++ 2008コマンドプロンプトを開く

スタートメニューまたはスタート画面を開き、「Visual C++ 2008 32ビットコマンドプロンプト」(Pythonが32ビットの場合)または「Visual C++ 2008 64ビットコマンドプロンプト」(Pythonが64ビットの場合)を検索します。 。それを実行します。コマンドプロンプトのタイトルバーに「Visual C++ 2008 ...」と表示されます。

ステップ2: 環境変数を設定する

これらの環境変数を、開いたばかりのプロンプトで設定します。

SET DISTUTILS_USE_SDK=1
SET MSSdk=1

参照 http://bugs.python.org/issue23246

ステップ3: ビルドしてインストールする

cdをビルドしたいパッケージに変更し、python setup.py buildを実行してからpython setup.py installを実行します。 virtualenvにインストールしたい場合は、ビルドする前にそれをアクティブにしてください。

16
Christian Long

多分誰かが興味を持っているかもしれません、以下はpy2exeパッケージのために私のために働きました。 (私は、Windows 7 64ビットおよびポータブルpython 2.7、Windows 7用のWindows SDKおよび.NET Framework 4を備えたVisual Studio 2005 Expressを持っています)

set VS90COMNTOOLS=%VS80COMNTOOLS%

その後:

python.exe setup.py install
9
Stefano Fenu

私は私のpython 3.4 64 bit版でこの問題を解決する方法を考え出すのに2日近く費やしました:Python 3.4.3(v3.4.3:9b73f1c3e601、Feb 24 2015、22:44:40)[MSC v.1600 64 bit(AMD64) win32で

解決策1、難しい: (これを読む前に、まず下記の解決策2を読んでください)最後に、これが私の助けになりました。

  1. インストール Visual C++ 2010 Express
  2. インストール Windows 7用Microsoft Windows SDK v7.1
  3. 手動でvcvars64.batを含むファイルCALL "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\AMD64に作成します。
  4. (これはオプションのようです)インストール Microsoft Visual Studio 2010 Service Pack 1 と共に Microsoft Visual C++ 2010 Service Pack 1 Windows SDK 7.1用のコンパイラ更新
  5. その後、私はpip install numpyを試みましたが、以下のエラーを受け取りました:

    File "numpy\core\setup.py", line 686, in get_mathlib_info
    raise RuntimeError("Broken toolchain: cannot link a simple C program")
    RuntimeError: Broken toolchain: cannot link a simple C program
    

    私はC:\Python34\Lib\distutils\msvc9compiler.pymfinfoNoneに変更しました https://stackoverflow.com/a/23099820/4383472

  6. 最後にpip install numpyコマンドを実行した後、私のavastアンチウイルスがインストールプロセスに干渉しようとしましたが、すぐに無効にしました

コンパイルに多大な時間がかかるため、数分かかりました。エラーもあると思いましたが、最終的にはすべて問題ありませんでした。

解決策2、簡単: (このアプローチはすでに投票されている 答え で言及されていることを知っていますが、本当に簡単なので繰り返してみましょう)私にとって最善の方法は http://www.lfd.uci.edu/~gohlke/pythonlibs/ から既にコンパイル済みのバイナリを使うことです。このサイトには含まれていないパッケージ(またはパッケージのバージョン)が必要になる可能性は非常に低いです。このようにしても、インストールプロセスはずっと速くなります。たとえば、numpyをインストールするには、次のようにします。

  1. そのサイトからnumpy‑1.9.2+mkl‑cp34‑none‑win_AMD64.whlをダウンロードします(あなたがPython 3.4 64-bitを持っているなら)
  2. コマンドプロンプトまたはpowershellで、pip pip install numpy‑1.9.2+mkl‑cp34‑none‑win_AMD64.whl(またはコマンドプロンプトを開く方法に応じてファイルへのフルパス)を使用してインストールします。
8
Bad

私は私のPython 3.5にnumpyライブラリをインストールしようとしたときにこの問題に遭遇しました。解決策はVS2015をインストールすることです。私はVS2008、2012、2013を持っていましたが、どれもpython 3.5と互換性がありません。どうやら新しいバージョンのpythonは新しいバージョンのVSに依存しています。

C++共通ツールがVisual Studioと一緒にインストールされていることも確認してください。

enter image description here

7
D.G.

私はPython 2.7のもとでWindows 10上でpysphを実行したかったのですが、vcvarsall.batが見つかりませんでした(distutilsから)

私の解決策は次のとおりです。

Python 2.7用のMicrosoft Visual C++をインストールします(@Michaelが提案したように)。

Windows 10では、それはにインストールされました(私のユーザー名はAndreasです):

C:\Users\Andreas\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0

環境変数 VS90COMNTOOLS をVisual C++ for Python 2.7のインストールパスに設定します(上記のパスを参照)。

それでもうまくいかない場合は、モジュールを修正してください。

C:/Python27/lib/distutils

ファイル msvc9compiler.py 。その中に関数 find_vcvarsall を見つけて、以下の変更を行います。

行を置き換えます。

productdir = os.path.join(toolsdir, os.pardir, os.pardir, "VC")

productdir = os.path.join(toolsdir)

これがvcvarsall.batが私の場合に存在する場所です(vcvarsall.batがあなたのインストールのどこにあるかチェックしてください)。

7
chiefenne

無料のVisual C++ 2008 Express Editionは http://go.Microsoft.com/?linkid=7729279 からダウンロードできます。これにより、インストール中にVS90COMNTOOLS環境変数が設定され、互換性のあるコンパイラーでビルドされます。

@PiotrDobrogostがコメントで言及したように、この他の質問に対する彼の答えは、Visual C++ 2008を使用してビルドするのが正しい理由について詳しく説明しますが、Python Visual Studioの場合: WindowsでのPython 2.7のlxmlのビルド

6
Eric Smith

私は上記のすべての答えを試してみました、そして、それらすべてのすべてがうまくいかないことがわかりました、これはおそらく私がWindows 8を使用していて、Visual Studio 2012をインストールしたことです。

vcvarsall.batファイルは次の場所にあります:C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC

ファイルを選択してコピーするだけです。

それからこのディレクトリに行きなさい:C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools

ファイルを貼り付けます。そして、すべてが順調であるはずです。

6
Games Brainiac

私はWindows 7 x64上のPython 3.4.1を使用してこの問題を抱えていました、そして残念ながら私が必要とするパッケージは私が使用することができる適当なexeまたはwheelを持っていませんでした。このシステムはいくつかの '回避策'を必要とします、そしてそれは以下で詳述されます(そして一番下のTLDR)。

上記の Jaxrtechの回答の情報を使用して 、私はVisual Studio C++ 2010(sys.version return MSC v.1600)が必要であると判断したので、回答のリンクからVisual C++ 2010 Expressをインストールしました。これは http://go.Microsoft.com/?linkid = 9709949 です。私はすべてをアップデートでインストールしました、しかしあなたが以下で読むことができるように、これは間違いでした。現時点ではExpressの元のバージョンのみをインストールする必要があります(何も更新されていません)。

vcvarsall.batが存在しましたが、パッケージのインストール中に新しいエラーquery_vcvarsall raise ValueError(str(list(result.keys())))ValueError: [u'path']が発生しました。このエラーに関する他のスタックオーバーフローの質問があります、例えば Python 2.7用Cモジュールの構築/インストール中のエラー

その答えから、2010 Expressは32ビットコンパイラのみをインストールすると判断しました。 64ビット(およびその他の)コンパイラを入手するには、Windows 7.1 SDKをインストールする必要があります。 http://msdn.Microsoft.com/ja-jp/windowsserver/bb980924.aspx を参照してください。

これは私にとってはうまくいきませんでした、そしてインストーラはエラーinstallation failed with return code 5100を返しました。私は次のリンクで解決策を見つけました: http://support.Microsoft.com/kb/2717426 。つまり、新しいバージョンのx86およびx64のMicrosoft Visual C++ 2010再頒布可能パッケージがインストールされている場合、それらはSDKインストーラーのものと競合するため、最初にアンインストールする必要があります。

その後SDKがインストールされましたが、vcvars64.batがC:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\binにもサブフォルダにもまだ存在しないことに気付きました。 vcvarsall.batはvcvars64バッチファイルを実行するので、それがなければ、pythonパッケージはまだインストールされません(この時点で表示されていたエラーを忘れてしまいました)。

それから私はここでいくつかの指示を見つけました: http://www.cryptohaze.com/wiki/index.php/Windows_7_Build_Setup#Download_VS_2010_and_Windows_SDK_7.1 指示に従って、私はすでにExpressと7.1 SDKをインストールしたのでSDK 7.1 SP1をインストールしましたそして、足りないヘッダファイルを修正しました。それから私は手動でコンテンツCALL setenv /x64を持つvcvars64.batを作成しました。これらの説明をすべてここに貼り付けますので、それらが迷子になることはありません。

ステップ1は、Visual Studio Express 2010をダ​​ウンロードすることです。

http://www.Microsoft.com/visualstudio/en-us/products/2010-editions/express から始めるのが良いでしょう。インストーラをダウンロードして実行します(vc_web.exe)。 SQL 2008の追加ダウンロードは必要ありません。

64ビットコンパイラ用のWindows SDK(現在は7.1)も必要です - 32ビットのみのビルドを行いたいのでない限り、これは完全にはサポートされていません...

http://www.Microsoft.com/ja-jp/download/details.aspx?id=8279 これをダウンロードするのに良いスタートポイントです - ダウンロードしたらwinsdk_web.exeを実行したいと思うでしょう!

ここでのデフォルトのインストールは問題ありません。

最後に、Windows SDK 7.1 SP1アップデートをダウンロードしてインストールします。 http://www.Microsoft.com/ja-jp/download/details.aspx?id=4422

そして、不足しているヘッダーファイル、VS2010 SP1を修正します。 http://www.Microsoft.com/downloads/en/confirmation.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5

そして、血まみれの地獄、VS2010 Expressのために不足しているバッチファイルを修正しました。これは実に不条理です。

C:¥Program Files(x86)¥Microsoft Visual Studio 10.0¥VC¥bin¥AMD64に、次のように「vcvars64.bat」を作成します(管理者として実行する必要があります)。

CALL setenv/x 64

私のpythonパッケージはまだインストールできませんでした(エラーを思い出すことができません)。私はそれから特別なSDK 7.1コマンドプロンプトを使用するためにいくつかの指示(下記にコピーされた)を見つけました: https://mail.python.org/pipermail/distutils-sig/2012-February/018300.html

この質問を気にしないでください。ここに誰かがメニューのこの項目に気づいた:スタート - >すべてのプログラム - > Microsoft Windows SDK v7.1 - > Windows SDK 7.1コマンドプロンプト

これは、コンパイラの作業環境を設定するように見えるバッチジョブを実行します。そのプロンプトから、「setup.py build」または「setup.py install」と入力できます。

指示に従ってWindows SDK 7.1のコマンドプロンプトを開き、pythonパッケージでeasy_installを実行するために使用しました。そしてついに成功!


TLDR;

  1. Visual Studio Express 2010をインストールします(できれば更新された再配布可能ファイルまたはSQLサーバーを使用せずに)。
  2. Windows 7.1 SDKをインストールする
  3. Instal SDK 7.1 SP1アップデート、およびVS2010 SP1ヘッダーファイルの修正(この手順は必須ではありません)。
  4. 手動でコンテンツCALL setenv /x64を持つC:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\AMD64\vcvars64.batを作成します
  5. [スタート] - > [すべてのプログラム] - > [Microsoft Windows SDK v7.1] - > [Windows SDK 7.1コマンドプロンプト]を選択して、特別なx64コマンドプロンプトを開きます。これは、python/easy_install/pip/etc(virtual_envs内のものも含む)で使用できます。
6
neRok

2016年にこれを解決する最も簡単な方法は、Chocolateyをインストールしてからvcpython27パッケージをインストールすることです。オープンパワーシェル:

> iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
> choco install python2 -y
> choco install vcpython27 -y
3
Chris S

Microsoft Visual C++ Compiler for Python 2.7は http://www.Microsoft.com/ja-jp/download/details.aspx?id=44266 解決策ではありませんか。

3
Michael

以下の手順で私のためにこの問題を解決しました。私はcython拡張を使ってセットアップを作成しようとしていました。

  1. Python 2.7用のMicrosoft Visual C++コンパイラをインストールする
  2. デフォルトのインストール場所は、@ C:¥Users¥PC-user¥AppData¥Local¥Programs¥Common¥Microsoft¥Visual C++ for Pythonです。これで問題が解決する場合があります。続行する前に1回テストしてください。
  3. 失敗した場合は、VC++ for pythonのvcvarsall.batファイルがある場所を確認してください。
  4. メモ帳でdistutilsパッケージのmsvc9compiler.pyファイルを開きます。
  5. 私のボックスでは、これは@ C:¥Anaconda2¥Lib¥distutils¥msvc9compiler.py find_vcvarsall関数でした。バージョン引数を出力してVCのバージョンを確認してください。 Python 2.7では、9.0になるでしょう
  6. ここで、環境変数VS90COMNTOOLSを作成し、C:¥Users¥PC-user¥AppData¥Local¥Programs¥Common¥Microsoft¥Visual C++ for Python¥9.0¥VC¥binを指します。
  7. 何らかの理由で、distutilsはvcvarsall.batファイルがVC dir内にあることを期待していますが、Pythonツール用のVC++は9.0のルートにそれを持っています。 247行目

    #productdir = os.path.join(toolsdir, os.pardir, os.pardir, "VC") productdir = os.path.join(toolsdir, os.pardir, os.pardir)

上記の手順で問題が解決しました。

3
Riyas Deen

私は多くの解決策を試してみましたが、Microsoft Visual Studio 2008 Express C++のインストールという1つだけが私のために働きました。

私はCで書かれたPython 2.7モジュール(yEnc、これはMS VSに関して他の問題があります)でこの問題を得ました。 Python 2.7は、2010年ではなく、MS VS 2008バージョンで構築されています。

それは無料の事実にもかかわらず、MSがVS 2010を宣伝しているので見つけるのは非常に難しいです。それでも、MSDN公式の非常に直接のリンクはまだ働いています:check https://stackoverflow.com/a/15319069/2227298 ダウンロードリンクの場合は_。

3
KrisWebDev

Mingwがインストールされている場合

pip install --global-option build_ext --global-option --compiler=mingw32 packagename

microsoftの代わりにmingwコンパイラを使用してpipをビルドするよう強制します。詳細はこちら https://github.com/pypa/pip/issues/18 を参照してください(最後の投稿)。

3
Nicolas78

私は同じ問題を抱えていて、現時点でそれを解決しました。

「Google」は、「Microsoft Visual C++ Compiler for Python 2.7」をインストールする必要があると言ってきました。ツールだけでなく、Visual C++ 2008 Reditributableもインストールしましたが、役に立ちませんでした。それから私はVisual C++ 2008 Express Editionをインストールしようとしました。そして問題は解決しました!

Visual C++ 2008 Express Editionをインストールしてみてください。

2
Vova

手遅れかどうかはわかりませんが、 Python 2.7用Microsoft Visual C++ Compiler と表示されます。

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

お役に立てれば!

2
mkamioner

Python 3.4では、依存関係はVisual Studio 2010にあります。VisualC++ 2010 Expressをインストールすることで問題は解決しました。

VS 2008または2013のインストールを使用しようとしても、うまくいきませんでした。

1
gmjonker

私は同じエラー(私は愚かであり、エラーメッセージが出てもまったく役に立たないと思う)を抱えていて、Cコンパイラが利用可能であるにも関わらず、問題を抱え続けていました。

驚いたことに、私にとってうまくいったのは pipとsetuptoolsを最新版にアップグレードすることでした 。これが他の誰かに役立つことを願っています。

1
cbrendanprice

@monkeyによって与えられた答えは正しいものの一つですが、それは不完全です。

MinGW を使用する場合は、C、C++、およびMinGWのインストールプロセス中に推奨されるその他の開発ツールも選択して、「make.exe」も取得する必要があります。

Envでパスをmake.exeに設定する必要もあります。

彼の答えを完成させるために、ここにステップがあります:

  1. Mingw32のbinディレクトリを環境変数に追加してください。
  2. PATHにC:\Programs\MinGW\bin;C:\Programs\MinGW\msys\1.0\bin;を追加
  3. distutils.cfgにあるC:\Python26\Lib\distutils\distutils.cfgファイルを編集します(存在しない場合は作成します)。

    [build]
    compiler=mingw32
    

新しいcmd.exeを開いて環境変数が設定されていることを確認してください。

1
Olivier N

import setuptoolsを呼び出すと、Visual Studioとの互換性を強制するために、パッチのdistutilsがモンキーパッチされます。手動でvcvars32.batを呼び出すことは仮想環境を設定し、コンパイラが投げる他の一般的なエラーを防ぎます。ファイルは次の場所にあります。

"C:¥Program Files(x86)¥Microsoft Visual Studio¥2017¥Community¥VC¥Auxiliary¥Build¥vcvars32.bat"

vS 2017用です。

1
user2682863

https://www.visualstudio.com からVisual Studio 2015 Community Editionをインストールし、

python 3.4の場合

set VS100COMNTOOLS=%VS140COMNTOOLS% && pip install XX

1
Sergey11g

MSVС++バージョンの完全なリスト そしてインストールのバリエーション 正式にはdistutilsでサポートされています (そしていくつかはsetuptoolsで) そしてそれらの使い方

HTTPS://WIKI.PYTHON.ORG/MOIN/WINDOWSCOMPILERS

また、どの公式のWin32 PythonリリースにどのVC++バージョンが必要かを指定します。 MinGWは公式にはサポートされていません (詳細は下記を参照してください)。

簡単に言うと:

  • 各リリースには、箱から出して動作する特定のVisual Studioリリースがあります。
  • スタンドアローンSDKの場合、通常はSDKプロンプト(=環境変数の設定)からインストールを実行する必要があります。
    • 一部の人にとっては、この要件は、敵対的な副作用を引き起こさない1回限りの微調整によって取り除かれる可能性があります。
  • 変わったVC++リリースの中には、setuptoolsではなくdistutilsでサポートされているものがあります。
  • MinGW は「動作する」と言われていますが、 x86のみhttps://bugs.python.org/issue4709 はそのサポートに関する問題はMinGW自体にあると述べています x86でもPython 3.5から問題を抱えているはずです。
1
ivan_pozdeev

あなたはそれが私のために働くピップの代わりにeasy_installを使うことができます。

1
Abdul Majeed

最速の解法

python 3.4.x がある場合は、それ自身をコンパイルするために使用されるため、解決策はVC++ 2010をインストールすることです。

https://www.visualstudio.com/ja-jp/downloads#d-2010-express

私のPythonのバージョンはwin32でMSC v.1600 32ビット(Intel)]です

Windows 8では問題なく動作しました

1
DmitrySemenov

Windowsボックスにpyodbcをインストールしようとしているのであれば、=ではないVisual Studioをインストールしないでください)バイナリ配布を使用して手動でpyodbcをインストールすることもできます。

あなたが使っているマシンの管理者権限がなく、 virtualenv を設定しようとしている場合、これは特に役に立ちます。

ステップ:

  1. here から最新のWindowsインストーラーをダウンロードします(pyodbc-X.X.X.win-Y-py2.7.exe)
  2. 7-Zip(またはWinRARなど)を使用してインストーラの実行可能ファイルを開きます。
  3. Pyodbc.pydおよびpyodbc-X.X.X-py2.7.Egg-infoを抽出して、それらを[python installation directory or virtualenv]\Lib\site-packagesに配置します。
  4. ステップ4はありません:)
1
Dane B

上記のすべての答えを試してみましたが、うまくいきませんでした。私はWindows 10を使用していて、Visual Studio 2010をインストールしていました。私の場合は、C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\AMD64vcvars64.batを追加する必要があります。

以下はvcvars64.batです。

CALL "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64

インストールしていない場合はMicrosoft SDK 7.1をインストールし、pip install dulwichを再実行します。

1
xavierzhao

ここに行きます: http://docs.continuum.io/anaconda/install.html#windows-install

http://www.scipy.org/ からこの問題を引き起こしていると思われる大多数のパッケージのGUIとサイレントインストールを提供するanacondaをインストールするための指示があります。私は2.7の解決策をここで知っています https://www.Microsoft.com/ja-jp/download/details.aspx?id=44266 しかし、Python 3.4のオプションは見当たりませんでした。 Anacondaをダウンロードしてインストールしたら、必要なパッケージの大部分をscipyからインポートできるはずです。

これが何人かの人々に役立つことを願っています。投稿やサイトを精査するのに45分かかりました。

編集:ちょうどGUIのページ上のOSのシンボルの横にPython34のリンクがあることに注意したかった。

1
jakden

私は窓10にパンダをインストールしようとしたときに私は同じエラーを抱えていた。いくつかの解決策を探した後、私はwheelを使うことになった。

まず最初に、pipを最新版にアップグレードしてください。

easy_install install -U pip

第二に、ホイールを取り付けます。

pip install wheel

3番目に、あなたのパッケージのwhlファイルをダウンロードしてインストールします。

pip install [xxx].whl

これまでのところ、私はwheelがウィンドウズにPythonパッケージをインストールするための最良の方法であると信じます。

0
Andong Zhan

http://www.stickpeople.com/projects/python/win-psycopg/

上記のリンクから適切なファイルをインストールすることが私の問題を修正しました。

言及:Jason Erickson [[email protected]]。彼はこのページをWindowsユーザーにはかなりうまく管理しています。

0
Rahul Bali

http://springflex.blogspot.ru/2014/02/how-to-fix-valueerror-when-trying-to.html 。の指示に従ったが、何も起こらなかった。それから私は2010 Visual Studio Expressをインストールした(アドバイスに従って http://www.Microsoft.com/visualstudio/ja-jp/products/2010-editions/visual-cpp-expresshttp://blog.python.org/2012/05 /recent-windows-changes-in-python-33.html それは私を助けた

0
Francuz