Python の easy_install でインストールされたパッケージを削除するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1231688

質問

パイソンの easy_install 新しいパッケージのインストールが非常に便利になります。ただし、私の知る限り、依存関係マネージャーの他の一般的な機能 (インストールされたパッケージの一覧表示と削除) は実装されていません。

何がインストールされているかを確認する最良の方法は何ですか?また、インストールされたパッケージを削除する推奨される方法は何ですか?パッケージを手動で削除した場合に更新する必要があるファイルはありますか (例:による rm /usr/local/lib/python2.6/dist-packages/my_installed_pkg.egg または類似)?

役に立ちましたか?

解決

setuptools / easy_installの代替である

pip は、「アンインストール」を提供します。コマンド。

インストール手順に従ってpipをインストールします。

$ wget https://bootstrap.pypa.io/get-pip.py
$ python get-pip.py

その後、 pip uninstall を使用して、 easy_install

でインストールされたパッケージを削除できます。

他のヒント

.egg をアンインストールするには、egg(ディレクトリである可能性があります)を rm -rf し、 site-packages /から一致する行を削除する必要がありますeasy-install.pth

まず、このコマンドを実行する必要があります:

$ easy_install -m [PACKAGE]

パッケージのすべての依存関係を削除します。

次に、そのパッケージのeggファイルを削除します:

$ sudo rm -rf /usr/local/lib/python2.X/site-packages/[PACKAGE].egg

すべての情報は他の回答にありますが、あなたのリクエストを両方要約していないか、不必要に複雑になっているようです:

  • 削除する必要がある場合:

    pip uninstall <package>
    

    easy_install pip を使用してインストール)

  • 「インストール済みパッケージのリスト」には、次のいずれかを使用する必要があります:

    pip freeze
    

    または:

    yolk -l
    

    パッケージの詳細を出力できます。

    easy_install yolk または pip install yolk でインストール)

複数のソースがネット上にあり、再インストールによるハッキングを示唆しています-mオプションを使用してパッケージし、lib /の.eggファイルとbin /のバイナリを削除するだけです。また、このsetuptoolsの問題に関する議論は、pythonバグトラッカーでsetuptools issue 21 として見つけることができます。

編集:Pythonバグトラッカーへのリンクを追加しました。

問題があなたにとって深刻な十分な迷惑である場合、 virtualenv を検討するかもしれません。 Pythonライブラリをカプセル化する環境を作成できます。グローバルなsite-packagesディレクトリではなく、そこにパッケージをインストールします。その環境で実行するスクリプトは、それらのパッケージ(およびオプションで、グローバルパッケージ)にもアクセスできます。グローバルにインストールする必要があるかどうかがわからないパッケージを評価するときに、これを頻繁に使用します。パッケージが必要ないと判断した場合、その仮想環境を吹き飛ばすだけで十分です。使い方はとても簡単です。新しいenvを作成します:

<*>gt;ENV/bin/easy_install
gt;virtualenv /path/to/your/new/ENV

virtual_envtは、新しい環境にセットアップツールをインストールするため、次のことができます。

<*>

新しい環境をセットアップする独自のboostrapスクリプトを作成することもできます。したがって、1つのコマンドで、たとえばpython 2.6、psycopg2、djangoがデフォルトでインストールされた新しい仮想envを作成できます(必要に応じてenv固有バージョンのpythonをインストールできます)。

Official(?)の手順: http://peak.telecommunity.com/DevCenter/ EasyInstall#uninstalling-packages

  

パッケージを別のバージョンに置き換えた場合、PackageName-versioninfo.eggファイルまたはディレクトリ(インストールディレクトリにあります)を削除することで、不要なパッケージを削除できます。

     

現在インストールされているパッケージのバージョン(またはパッケージのすべてのバージョン)を削除する場合は、最初に実行する必要があります:

easy_install -mxN PackageName
     

これにより、Pythonが削除しようとしているパッケージを検索し続けることがなくなります。これが完了したら、.eggファイルまたはディレクトリを、削除するスクリプトとともに安全に削除できます。

試用

$ easy_install -m [PACKAGE]

then

$ rm -rf .../python2.X/site-packages/[PACKAGE].egg

インストールされている Python パッケージを一覧表示するには、次を使用できます yolk -l. 。を使用する必要があります easy_install yolk まず最初に。

時間の経過とともにインストールされた多くのランダムなPythonパッケージをアンインストールしようとしながら、この質問に出くわしました。

このスレッドからの情報を使用して、これが私が思いついたものです:

cat package_list | xargs -n1 sudo pip uninstall -y

package_list は、virtualenvの pip freeze からクリーンアップ(awk)されます。

すべてのPythonパッケージをほぼ削除するには:

yolk -l | cut -f 1 -d " " | grep -v "setuptools|pip|ETC.." | xargs -n1 pip uninstall -y

MacOS X Leopard 10.6.blahで同じ問題に遭遇しました。

解決策は、MacPorts Pythonを呼び出していることを確認することです:

sudo port install python26
sudo port install python_select
sudo python_select python26
sudo port install py26-mysql

これがお役に立てば幸いです。

このファイルを削除するのは私だけ:easy-install.pth 働いた、残りのピップインストールdjango == 1.3.7

これは私のために働いた。以前の回答と似ていますが、パッケージへのパスが異なります。

  1. sudo easy_install -m
  2. sudo rm -rf /Library/Python/2.7/site-packages/.egg

プラットフォーム:MacOS High Sierraバージョン10.13.3

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top