Ubuntu 16.04 Xenial Xerus
Ubuntu 14.04 Trusty Tahr
Ubuntu 12.04 Precise Pangolin
Die Setuptools sind eine Sammlung von Hilfsprogrammen für Python, mit deren Hilfe man leicht Python-Module bauen und installieren kann.
Auch wenn die Setuptools nach wie vor funktionieren und unterstützt werden, ist pip der gängigere Weg zur Installation von Python-Modulen, das auch seit Python 3.4 Teil der Standardinstallation von Python ist.
Die Setuptools installiert [1] man für Python 3 über das Paket:
python3-setuptools
mit apturl
Paketliste zum Kopieren:
sudo apt-get install python3-setuptools
sudo aptitude install python3-setuptools
bzw. für Python 2:
python-setuptools
mit apturl
Paketliste zum Kopieren:
sudo apt-get install python-setuptools
sudo aptitude install python-setuptools
Das Programm easy_install3 (Python3) bzw. easy_install (Python 2) bietet eine einfache Möglichkeit, Module aus dem Python Package Index (kurz PyPI) zu installieren. Der PyPI kann als ein Äquivalent zu Perls CPAN, PHP PEAR oder Ruby Gems gesehen werden.
Fremdsoftware kann das System gefährden.
Anmerkung: Module aus dem Python Package Index werden an der Paketverwaltung „vorbei“ installiert. Dies birgt zwar an sich gesehen keine Konflikte, kann aber zu unvorhergesehen Ergebnissen oder Problemen mit Python-Skripten führen, wenn das gleiche Python Modul auch über die Paketverwaltung installiert wird, zumal mittels easy_install3
bzw. easy_install
installierte Module denen aus der Paketverwaltung vorgezogen werden.
Die Module werden in Form von sogenannten Python Eggs installiert. Dies geschieht über den Aufruf [2]
sudo easy_install3 MODULNAME
Der Installationspfad ist /usr/local/lib/pythonVERSION/dist-packages/ . Module von PyPi lösen Abhängigkeiten, ebenso wie die Paketverwaltung von Ubuntu, selbstständig auf. D.h. benötigt ein Modul weitere Module, um korrekt zu funktionieren, dann werden diese ebenfalls installiert.
Möchte man ein Modul aktualisieren, so geschieht dies über den Befehl
sudo easy_install3 -U MODULNAME
Benötigt man - aus welchem Grund auch immer - eine ältere Version eines Moduls, so kann man auch explizit die Versionsnummer bei der Installation mit angeben. Der folgende Befehl würde z.B. die Version 0.2.1 des Moduls "foobar" installieren:
sudo easy_install3 foobar==0.2.1
easy_install3
kennt eine Reihe weiterer Optionen, die über den Aufruf von
easy_install3 --help
angesehen werden können.
easy_install3
kennt keine direkte Version zum Löschen von Installierten Modulen, diese muss in zwei Schritten händisch erfolgen.
Als erstes "de-registriert" man das Modul in Python, so dass nicht mehr danach gesucht wird:
sudo easy_install3 -mxN MODULNAME
Danach kann man das Unterverzeichnis des Moduls in dem oben genannten Installationsverzeichnis entfernen.
Hat man noch alte Versionen eines Moduls auf dem Rechner, z.B. weil man mehrfach mittels der Option -U
ein Update durchgeführt hatte, so kann man die entsprechenden Unterverzeichnisse direkt löschen, ohne den oben genannten Befehl vorher aufzurufen. Der Befehl ist in der Tat nur für die neuste Version eines Moduls notwendig.
Weiterhin installieren einige Module nicht nur den eigentlichen Python-Code in dem oben genannten Verzeichnis, sondern installieren auch eine ausführbare Datei. Dies ist z.B. oft dann der Fall, wenn das Modul auch alleinstehend wie ein eigenes Programm funktioniert. Diese Datei muss auch von Hand gelöscht werden, der Speicherort ist normalerweise /usr/local/bin.
Wie oben bereits erwähnt besitzen die Setuptools ein Vielzahl weiterer nützlicher Funktionen. Einen guten Einsteig biete das Lesen der (englischsprachigen) Datei /usr/share/doc/python3-setuptools.txt.gz, welche nach der Installation des Setuptools-Pakets vorhanden ist.
Why you should not use easy_install carelessly on Debian - Blogeintrag zur parallelen Verwendung von easy_install
und der Paketverwaltung, 10/2009
pip - der inoffizielle Nachfolger von easy_install zum Installieren, Deinstallieren und Aktualisieren von Python-Module
Python Übersichtsartikel
Diese Revision wurde am 29. Januar 2017 14:05 von aasche erstellt.