ツイストのインストールに問題があります
pip --version
/home/chris/GL/GLBackend/glenv/lib/python2.7/site-packages/pip-1.1-py2.7.Egg(python 2.7)のpip 1.1
仮想環境の作成
chris@chris-mint ~/GL/GLBackend $ Sudo virtualenv -p python2.7 glenv
インタプリタ/usr/bin/python2.7を使用してvirtualenvを実行新しいpython glenv/bin/python2.7で実行可能ファイルまたglenv/bin/pythonに実行可能ファイルを作成します。 .................................................. .................................................. .................................................. ................................完了。pipのインストール..............完了しました。
念のため、すべての権限を有効にします
chris@chris-mint ~/GL/GLBackend $ Sudo chmod -R 777 glenv
chris@chris-mint ~/GL/GLBackend $ source glenv/bin/activate
(glenv)chris@chris-mint ~/GL/GLBackend $ pip freeze
argparse == 1.2.1 distribute == 0.6.24 wsgiref == 0.1.2
ここではインストール済みとしてツイストはリストされていません
(glenv)chris@chris-mint ~/GL/GLBackend $ Sudo pip install twisted
要件はすでに満たされています(アップグレードするには--upgradeを使用):/usr/local/lib/python2.7/dist-packagesでツイストされています要件は既に満たされています(アップグレードするには--upgradeを使用):/でzope.interface> = 3.6.0 usr/local/lib/python2.7/dist-packages(twistedから)要件は既に満たされています(--upgradeを使用してアップグレード):/usr/local/lib/python2.7/dist-packages(zope.interfaceから)で配布します> = 3.6.0-> twisted)クリーンアップ...(glenv)chris @ chris-mint〜/ GL/GLBackend $ pip uninstall twisted要件twisted、インストールされていない要件をアンインストールできません/home/chris/.pip/に完全なログを保存しますpip.log
ただし、インストールすると、既にインストールされていると表示されます。インストールを強制します:
Sudo pip install -I twisted
ツイストのダウンロード/アンパックTwisted-12.3.0.tar.bz2のダウンロード(2.6Mb):2.6Mbがダウンロードされましたパッケージtwistedのsetup.py Egg_infoを実行しています。 。 。
ねじれたzope.interfaceが正常にインストールされました。
それでもまだインストールされていません
(glenv)chris@chris-mint ~/GL/GLBackend $ pip freeze
argparse == 1.2.1 distribute == 0.6.24 wsgiref == 0.1.2
** twistedを使用するPythonスクリプトを実行しようとすると、twistedがインストールされていないというエラーが表示されます。
ImportError:twisted.python **という名前のモジュールはありません
ここでの問題は、使用すべきでないときにSudo
を使用していることです。そして、それはpip
が/usr/local/lib
の代わりに~/glenv/lib
にインストールしようとする原因になります。 (また、Sudo
を使用しているため、正常に実行されていますが、venvでシステムサイトパッケージを許可していないため、それは役に立ちません。)
Sudo pip
がこの動作につながる理由はいくつかありますが、最も可能性が高いのは、ほとんどのシステム(すぐにアクセスできるさまざまなMacおよびRHEL/CentOSボックスを含む)で、sudoers
ファイルが環境をリセットすることです。その後、ホワイトリストに登録された少数の環境変数を追加し直します。つまり、Sudo pip
を実行すると、virtualenv
が設定する環境変数が表示されないため、デフォルトの処理に戻り、venvではなくシステムPythonにインストールされます。
しかし、実際には、それは問題ではありませんなぜこれは起こっています。答えは同じです:pip install
の代わりにSudo pip install
を実行するだけです。
alsoSudo
呼び出しでvirtualenv
を削除したいことに注意してください。これにより、おそらくvenvが誤って設定されることになります(そのため、Sudo chmod
が必要です。それ以外の場合は必要です)。ユーザーのホームディレクトリの下にインストールすることの全体的なポイントは、通常のユーザー権限でインストールできることです。
補足として、1.8および1.2にはいくつかのバグ修正と改善があるため、新しいvirtualenv
/pip
にアップグレードすることもできます。しかし、最新バージョン(1.8.4および1.2.1)でもまったく同じ問題が発生することを確認したため、ここでは関係ないと思います。