<p>virtualenvはWindows上のPython3.5で失敗します</p>

作成日 2015年09月15日  ·  16コメント  ·  ソース: pypa/virtualenv

  1. 公式のWindowsインストーラーを使用してPython3.5をインストールします
  2. シェルを取得
  3. python -m surepip(インストーラーが何らかの理由でpipをインストールしなかったため)
  4. python -m pip install virtualenv(バージョン13.1.2を取得します)
  5. python -m virtualenv env

私は期待しています:./ envのvirtualenv

「VCRUNTIME140.dllがコンピュータにないため、プログラムを起動できません」というGUIエラーダイアログが表示されます。

どうやらvirtualenvは、Windowsで動作するPython3.5の新しいvirtualenvにvcruntime140.dllをコピーする必要があります。

元々はhttp://bugs.python.org/issue25119に提出されました

最も参考になるコメント

同様に、 python3.dllはコピーされません。つまり、一部の拡張モジュール(PyQt5など)はImportError: DLL load failed: The specified module could not be found.失敗します。

全てのコメント16件

@zoobaここでvirtualenvをどのように進めるのが最善かについてアドバイスはありますか? dllをすべての3.5virtualenvにコピーしますか?

ええ、それは必要になるでしょう。

Windowsでは、 sys.prefixjoin(sys.prefix, 'DLLs')からすべてのvcruntime*.dllファイルをコピーすることをお勧めします。 ある時点で、 vcruntime140.dllをDLLに移動して、古い拡張モジュールとバックコンパクトしますが、いつになるかはわかりません(メジャーリリースである必要があるとはまだ確信していません)。

https://pypi.python.org/pypi/virtualenv-rewriteでもこのエラーが発生し

いいえ、virtualenv-rewriteはPython3.5で正常に機能します。 (しばらく前にvirtualenv-rewrite 14.1.0をテストしましたが、それでもJenkinsで正常に動作します。)

Windowsでも同じ問題が発生していますが、スクリプトの設定が実際には完了していないため、dllをコピーするだけでは不十分です。

同じウィンドウにPython2.7と3.5があり(両方ともすべてのユーザーにインストールされています)、次のすべてのコマンドで失敗します。

> virtualenv --python="C:\Python35\python.exe" env

(with virtualenvwrapper) > mkvirtualenv --python="C:\Python35\python.exe" env

> C:\Python35\Scripts\virtualenv-3.4.exe  --python="C:\Python35\python.exe" env

virtualenvv13.1.2を使用したWindows10でのPython3.5.1でこのバグを確認してください:(

ところで、私はそれを機能させるために3.4に戻らなければなりませんでした。

これは、virtualenv15.0.3を搭載したWindows10のPython3.5.2で確認します。

virtualenv15.0.3を搭載したWindows8.1のPython3.5.2でこれを確認してください

virtualenv15.0.3を搭載したWindows7上のPython3.5.2のバグを確認します

OK、みんな。 私も同じ問題を抱えていました。 https://sourceforge.net/projects/pywin32/から「pywin32」をインストールしました。
その後、エラーは発生しませんでした。 pywin32にはWindows用のPython拡張機能があります。
お使いのバージョンのPythonにインストールしてください。
正しいバージョン(Pythonバージョン、32ビット/ 64ビットなどと一致)を取得していることを確認してください。
それが役に立てば幸い。

Windows 7 Python 3.5.2の場合、 http ://www.opendll.com/index.php = vcruntime140.dll&arch = 14.0.22816.0&dsc ます。 \ ウィンドウズ

ありがとう、Amytipple! ところで、信頼できないランダムなインターネットサイトからDLLファイルをダウンロードする必要はありません。c:/Python3.5/(またはPython 3.5をインストールした場所)から%PATH%の任意のディレクトリにDLLファイルをコピーするだけです。

同様に、 python3.dllはコピーされません。つまり、一部の拡張モジュール(PyQt5など)はImportError: DLL load failed: The specified module could not be found.失敗します。

簡単な回避策があります。 パスを更新して、特定のPythonバージョンを含めます。例:

set "PATH=C:\Program Files (x86)\Python36-32;%PATH%"

この問題は、最近のアクティビティがないため、自動的に古いものとしてマークされています。 それ以上のアクティビティが発生しない場合は閉じられます。 開いたままにしておきたい場合は、コメントを追加してください。 貢献していただきありがとうございます。

このページは役に立ちましたか?
0 / 5 - 0 評価