717 Stimmen

Wie entferne ich Pakete, die mit Pythons easy_install installiert wurden?

Pythons easy_install macht die Installation neuer Pakete extrem bequem. Soweit ich das beurteilen kann, implementiert es jedoch nicht die anderen üblichen Funktionen eines Abhängigkeitsmanagers - das Auflisten und Entfernen installierter Pakete.

Wie finde ich am besten heraus, welche Pakete installiert sind, und wie entferne ich installierte Pakete am besten? Gibt es irgendwelche Dateien, die aktualisiert werden müssen, wenn ich Pakete manuell entferne (z.B. durch rm /usr/local/lib/python2.6/dist-packages/my_installed_pkg.egg oder ähnlich)?

67 Stimmen

Dieser Beitrag ist fast 2 Jahre alt, wenn ich diesen Kommentar schreibe. pip ist jetzt effektiv ein Ersatz für easy_install und kann ordnungsgemäß und sauber Pakete (einschließlich Eier) entfernen, die von letzterem installiert wurden. Bitte stellen Sie sicher, dass Sie die Antwort, die dies vorschlägt, weiter unten im Thread hoch bewerten.

55 Stimmen

Das Oxymoron, dass etwas namens "einfach_installieren" - nicht a: ein Gegenstück haben easy_uninstall noch b: sich die Mühe machen zu erwähnen, wie man dies in der --help - verblüfft meinen Verstand / _verärgert meine Seele / betrübt mein Herz .

13 Stimmen

@mike was ist, wenn ich versuche, pip zu deinstallieren? (:

623voto

lunaryorn Punkte 32342

pip , eine Alternative zu setuptools/easy_install, bietet einen "Uninstall"-Befehl.

Installieren Sie pip gemäß der Installationsanweisungen :

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

Dann können Sie pip uninstall um Pakete zu entfernen, die mit easy_install

0 Stimmen

Hey, das tut es tatsächlich! Danke! Ich habe mich schon geärgert, dass es nicht funktioniert hat. Aus irgendeinem Grund blieb mein System bei der Version 0.3.1 von pip ; ich musste füttern easy_install die URL zum Tarball der Version 0.8.1, um auf eine Version zu aktualisieren, die die uninstall Befehl.

25 Stimmen

Wenn Sie Probleme bei der Deinstallation von Modulen mit pip haben, stellen Sie sicher, dass Ihre pip-Installation selbst auf dem neuesten Stand ist: pip install -U pip # das ist ein großgeschriebenes U

4 Stimmen

Pip hat bei mir funktioniert, um ein mit easy_install installiertes Paket zu deinstallieren. Ich musste allerdings "pip uninstall <Paket>" mehrmals ausführen, um alle Versionen des Pakets zu entfernen. Behalten Sie das also im Hinterkopf. Es hat sogar ein installiertes "develop"-Paket entfernt, was ein ziemliches Durcheinander zur Folge hatte.

194voto

joeforker Punkte 38123

Zum Deinstallieren einer .egg müssen Sie rm -rf das Ei (es könnte ein Verzeichnis sein) und entfernen Sie die entsprechende Zeile aus site-packages/easy-install.pth

18 Stimmen

Das neuere pip Paketmanager enthält eine Deinstallationsfunktion.

0 Stimmen

Ich finde pip besser als uninstall, weil pip aus den Quellen installiert. Wenn Sie wie ich eine brandneue Win7 64bit haben, wird es Ihre Tage sparen :)

6 Stimmen

Einige von uns arbeiten mit einer alten Version von pip, die keine Deinstallationsoption hat, daher ist diese Antwort immer noch von Wert.

163voto

PythonDev Punkte 4219

Zuerst müssen Sie diesen Befehl ausführen:

$ easy_install -m [PACKAGE]

Es werden alle Abhängigkeiten des Pakets entfernt.

Entfernen Sie dann die Eierdatei dieses Pakets:

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

1 Stimmen

0 Stimmen

-m ist nicht der richtige easy_install-Befehl, um irgendetwas zu entfernen, soweit ich das beurteilen kann, aber diese Antwort gibt den entscheidenden Ort der easy_install-Pakete an, was andere Antworten nicht tun. an rm -rf /usr/local/lib/python* vor der Pip-Installation ist der richtige Weg, so scheint es mir

55voto

Rabarberski Punkte 22624

Alle Informationen stehen in den anderen Antworten, aber keine fasst zusammen beide Ihre Anfragen oder scheinen die Dinge unnötig kompliziert zu machen:

  • Für Ihre Umzugsbedürfnisse verwenden:

    pip uninstall <package>

    (Installation mit easy_install pip )

  • Für die Liste der installierten Pakete verwenden Sie entweder:

    pip freeze

    Oder:

    yolk -l

    die weitere Paketdetails ausgeben kann.

    (Installation über easy_install yolk o pip install yolk )

0 Stimmen

Nach der Ausführung yolk -l Ich sehe, dass ich doppelte Pakete habe, wie "scipy -0.11.0 -non-active development" und "scipy -0.14.0... -active development". Wie kann ich diese nicht aktiven Entwicklungspakete deinstallieren?

2 Stimmen

Das ist gut, aber ich möchte pip deinstallieren, das von easy_install installiert wurde. Der Grund dafür ist, dass es am Ende für die falsche Python-Version installiert wurde.

28voto

c089 Punkte 4803

Es gibt mehrere Quellen im Netz schlagen einen Hack vor, indem man das Paket mit der Option -m neu installiert und dann nur die .egg-Datei in lib/ und die Binärdateien in bin/ entfernt. Eine Diskussion über dieses Setuptools-Problem kann auch im Python Bug Tracker als Setuptools gefunden werden Ausgabe 21 .

Edit: Ich habe den Link zum Python Bugtracker hinzugefügt.

2 Stimmen

Vielen Dank für diese Information. Für andere Referenz, hier ist der Link zu dem Problem, das Sie erwähnt: bugs.python.org/setuptools/issue21

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X