Ich möchte nicht mit virtualenv für eine lokale Python-Installation umgehen, sondern nur ein paar Pakete lokal installieren, ohne die PYTHONPATH
Umgebungsvariable zu bearbeiten. Wie mache ich das?
32
Ich möchte nicht mit virtualenv für eine lokale Python-Installation umgehen, sondern nur ein paar Pakete lokal installieren, ohne die PYTHONPATH
Umgebungsvariable zu bearbeiten. Wie mache ich das?
--system-site-packages
?)Antworten:
Python (ab 2.6 und 3.0 ) sucht jetzt im ~ / .local-Verzeichnis nach lokalen Installationen, für deren Installation keine Administratorrechte erforderlich sind. Sie müssen also nur Ihr Installationsprogramm auf dieses Verzeichnis verweisen.
Wenn Sie das Paket bereits heruntergeladen haben
foo
und es manuell installieren möchten, geben Sie Folgendes ein:Wenn Sie easy_install verwenden und möchten, dass das Paket heruntergeladen und installiert wird:
Update von RafiK
Die folgende Antwort dient historischen Zwecken: Wenn Sie pip zum Herunterladen und Installieren verwenden, ist dies ein wenig aufwändiger:
quelle
pip install --user SomePackage
(Link zum Handbuch) Damit sollte auch auf verschiedenen Betriebssystemen alles vonObwohl ich Python als Sprache mag, ist das Verteilen von Python-Paketen ein Chaos. Ich finde immer Leute, die nicht mit Python vertraut sind und damit zu kämpfen haben.
Neben der von Aron beschriebenen benutzer-lokalen Installation (mit --user oder --prefix) ist EasyBuild ( http://hpcugent.github.com/easybuild/ ) eine weitere Option . Nicht nur für Python-Pakete, sondern für jedes (wissenschaftliche) Softwarepaket. Sobald EasyBuild dies unterstützt, ist das Erstellen und Installieren eines Softwarepakets im Grunde genommen ein einziger Befehl.
Eine Liste der derzeit unterstützten Softwarepakete finden Sie unter https://github.com/hpcugent/easybuild/wiki/List-of-supported-software-packages .
Haftungsausschluss: Ich bin ein Entwickler von EasyBuild.
quelle
@Aron: Stellen Sie sicher, dass Sie der Umgebungsvariablen $ PYTHONPATH den Pfad für die lokalen Site-Pakete hinzufügen
quelle
--prefix
Option verwenden.