Ich versuche, Python3 mit den folgenden Schritten auf RHEL zu installieren:
yum search python3
Welches kehrte zurück No matches found for: python3
Gefolgt von:
yum search python
Keines der Suchergebnisse enthielt python3. Was soll ich als nächstes versuchen?
python
python-3.x
rhel
Chander Shivdasani
quelle
quelle
Antworten:
Es ist einfach, es manuell zu installieren:
Download (möglicherweise gibt es neuere Versionen auf Python.org ):
Entpacken
Kompilierung vorbereiten
Bauen
Installieren
ODER wenn Sie die
python
ausführbare Datei nicht überschreiben möchten (sicherer, zumindest in einigen Distributionenyum
musspython
2.x sein, z. B. für RHEL6), können Sie siepython3.*
als gleichzeitige Instanz auf dem Systemstandard installieren mitaltinstall
:Wenn Sie nun ein alternatives Installationsverzeichnis wünschen, können Sie es
--prefix
an denconfigure
Befehl übergeben.Beispiel: Für die 'Installation' von Python in / opt / local fügen Sie einfach hinzu
--prefix=/opt/local
.Nach dem
make install
Schritt: Um Ihre neue Python - Installation zu verwenden, es könnte sein, dass Sie immer noch die [prefix] / ist zu dem hinzufügen müssen$PATH
und [prefix] / lib auf den$LD_LIBRARY_PATH
(abhängig von dem--prefix
Sie bestanden)quelle
no acceptable C compiler found in $PATH when installing python
Hinweis auf http://stackoverflow.com/questions/19816275/no-acceptable-c-compiler-found-in-path-when-installing-python./configure --with-ensurepip=install
zu aktivierenpip3
, oder Sie habenpip3
nach der Kompilierung nicht installiert.Die Installation von RPM ist im Allgemeinen besser, weil:
Lösung 1: Red Hat & EPEL-Repositorys
Red Hat hat über das EPEL- Repository Folgendes hinzugefügt :
[EPEL] So installieren Sie Python 3.4 unter CentOS 6
Sie können Ihre virtuelle Umgebung erstellen mit
pyvenv
:[EPEL] So installieren Sie Python 3.6 unter CentOS 7
Mit CentOS7
pip3.6
wird als Paket geliefert :)Sie können Ihre virtuelle Umgebung erstellen mit
pyvenv
:Wenn Sie das
pyvenv
Skript verwenden, erhalten Sie eine WARNUNG:Lösung 2: IUS Community-Repositorys
Die IUS-Community bietet einige aktuelle Pakete für RHEL & CentOS . Die Jungs dahinter sind von Rackspace, also denke ich, dass sie ziemlich vertrauenswürdig sind ...
https://ius.io/
Überprüfen Sie hier das richtige Repo für Sie:
https://ius.io/setup
[IUS] So installieren Sie Python 3.6 unter CentOS 6
Sie können Ihre virtuelle Umgebung erstellen mit
pyvenv
:[IUS] So installieren Sie Python 3.6 unter CentOS 7
Sie können Ihre virtuelle Umgebung erstellen mit
pyvenv
:quelle
https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/iu<200c><200b>s-release-1.0-14.ius.centos6.noarch.rpm
Hier ist das Unicode-Zeichen: fileformat.info/info/unicode/char/200c/index.htm Die URL in meiner ursprünglichen Antwort funktioniert. Ich habe sie gerade getestet es.python34u-pip
.Zusätzlich zu Geccos Antwort würde ich Schritt 3 ändern von:
zu:
Nach der Installation können Sie dann auch:
Es soll sichergestellt werden, dass die Installation nicht mit Python in Konflikt steht, das mit yum installiert wurde.
Siehe Erklärung, die ich im Internet gefunden habe:
http://www.hosting.com/support/linux/installing-python-3-on-centosredhat-5x-from-source
quelle
/opt
?/usr/local
existiert speziell für diesen Zweck und dort wird es./configure
ohne explizite--prefix
Platzierung platziert.export PATH=$PATH:/opt/python3/bin
Neben Python 2.7 und 3.3 enthält Red Hat Software Collections jetzt auch Python 3.4 - alle funktionieren sowohl mit RHEL 6 als auch mit RHEL 7.
RHSCL 2.0-Dokumente finden Sie unter https://access.redhat.com/documentation/en-US/Red_Hat_Software_Collections/
Plus viele Artikel bei developerblog.redhat.com.
bearbeiten
Befolgen Sie diese Anweisungen , um Python 3.4 unter RHEL 6/7 oder CentOS 6/7 zu installieren:
quelle
scl enable rh-python34 bash
? Was sind die Implikationen für die spätere Verwendung?wget https://www.softwarecollections.org/en/scls/rhscl/rh-python35/epel-6-x86_64/download/rhscl-rh-python35-epel-6-x86_64.noarch.rpm
, aber es wurde nicht gefunden.Verwenden Sie die SCL-Repos.
(Dieser letzte Befehl muss jedes Mal ausgeführt werden, wenn Sie Python27 anstelle des Systemstandards verwenden möchten.)
quelle
scl enable python33 bash
um eine neue Shell zu starten, die für Python 3 aktiviert wird oderscl enable python33 'python hello.py'
die Ihre Python-Datei mit Python 3 in der aktuellen Shellsubscription-manager repos --enable rhel-7-server-optional-rpms --enable rhel-server-rhscl-7-rpms
. Dann kannst duyum install rh-python36
. Siehe Wie Python installiert 3 auf RHEL für weitere Informationen.Python3 wurde kürzlich als Python34 zu EPEL7 hinzugefügt.
Es werden (derzeit) Anstrengungen unternommen, um Verpackungsrichtlinien für das Verpacken von Dingen für Python3 in EPEL7 zu erstellen.
Siehe https://bugzilla.redhat.com/show_bug.cgi?id=1219411
und https://lists.fedoraproject.org/pipermail/python-devel/2015-July/000721.html
quelle
Sie können eine Quelle RPMs und Binär - RPMs für RHEL6 / CentOS6 Download von hier
Dies ist ein Backport von der neuesten Fedora-Entwicklungsquelle RPM zu RHEL6 / CentOS6
quelle
createrepo
dieser Verzeichnisse sie für manche Menschen noch nützlicher machen.baseurl
Ich sehe alle Antworten darin, entweder Python3 aus Code zu kompilieren oder das binäre RPM-Paket zu installieren. Hier ist eine weitere Antwort, um EPEL (Extra Packages for Enterprise Linux) zu aktivieren und dann Python mit yum zu installieren. Schritte für RHEL 7.5 (Maipo)
Siehe auch Link
quelle
sudo yum install python34-setuptools
Ich hatte das gleiche Problem mit Python 2.7. Führen Sie die folgenden Schritte aus, um ein erfolgreiches Upgrade auf 3.6 durchzuführen. Sie können auch versuchen, diese-
Siehe vor dem Upgrade der Version ist 2.x.
Verwenden Sie den folgenden Befehl, um Ihre Python auf die Version 3.x zu aktualisieren.
yum installiere python3x
Ersetzen Sie x durch die gewünschte Versionsnummer.
dh für die Installation von Python 3.6 ausführen
Wenn Sie danach diesen Python für Ihre Standardversion festlegen möchten , fügen Sie ihn in der bashrc- Datei hinzu
vi ~ / .bashrc
Führen Sie den Befehl bash aus, um die Einstellungen zu übernehmen
Jetzt können Sie die Version unten sehen
quelle
rh-python36
.Drei Schritte mit Python 3.5 von Software Collections :
Beachten Sie, dass sudo für den letzten Befehl nicht benötigt wird. Jetzt können wir sehen, dass Python 3 die Standardeinstellung für die aktuelle Shell ist:
Überspringen Sie einfach den letzten Befehl, wenn Sie Python 2 als Standard für die aktuelle Shell verwenden möchten.
Nehmen wir nun an, Ihre Python 3-Skripte geben Ihnen einen Fehler wie
/usr/bin/env: python3: No such file or directory
. Das liegt daran, dass die Installation normalerweise auf einem ungewöhnlichen Pfad erfolgt:Das Obige wäre normalerweise ein Symlink. Wenn Sie beim Start
python3
automatisch$PATH
für alle Benutzer hinzugefügt werden möchten , können Sie dazu eine Datei wie die folgende hinzufügen:Welches hätte so etwas wie:
Und jetzt nach einem Neustart, wenn wir das tun
Es sollte einfach funktionieren. Eine Ausnahme wäre ein automatisch generierter Benutzer wie "jenkins" auf einem Jenkins-Server ohne Shell. In diesem Fall fügen Sie den Pfad manuell hinzu
$PATH
Skripten eine Möglichkeit.Wenn Sie
sudo pip3
Pakete installieren, aber feststellen, dass pip3 nicht gefunden werden kann, haben Sie möglicherweise einen sicheren Pfad in / etc / sudoers . Die Überprüfung mitsudo visudo
sollte dies bestätigen. So verwenden Sie vorübergehend den Standardpfad, wenn Sie Befehle ausführen, können Sie beispielsweise Folgendes tun:Weitere Informationen finden Sie in dieser Frage.
HINWEIS : Es gibt ein neueres Python 3.6 von Software Collections, aber ich würde es derzeit nicht empfehlen, da ich große Probleme hatte, Pycurl zu installieren. Für Python 3.5 ist das kein Problem, da ich gerade das getan habe,
sudo yum install sclo-python35-python-pycurl
was sofort funktioniert hat.quelle
No package centos-release-scl available.
Wenn Sie RHEL verwenden und ein von Red Hat unterstütztes Python möchten, verwenden Sie Red Hat Software-Sammlungen (RHSCL). Die EPEL- und IUS-Pakete werden von Red Hat nicht unterstützt. Viele der obigen Antworten verweisen auch auf die CentOS-Softwaresammlungen. Sie können diese zwar installieren, sie sind jedoch nicht die von Red Hat unterstützten Pakete für RHEL.
Die am häufigsten gewählte Antwort gibt auch schlechte Ratschläge - Auf RHEL möchten Sie nichts ändern
/usr/bin/python
,/usr/bin/python2
da Sie wahrscheinlich kaputt gehenyum
und andere RHEL-Verwaltungstools. Schauen Sie sich an/bin/yum
, es ist ein Python-Skript, das mit beginnt#!/usr/bin/python
. Wenn Sie Python aus dem Quellcode kompilieren, führen Sie keinmake install
as als root aus. Das wird überschreiben/usr/bin/python
. Wenn Sie kaputt gehenyum
, kann es schwierig sein, Ihr System wiederherzustellen.Weitere Informationen finden Sie unter Installieren von Python 3, pip, venv, virtualenv und pipenv auf RHEL unter developer.redhat.com . Es behandelt die Installation und Verwendung von Python 3 von RHSCL, die Verwendung von Python Virtual Environments sowie eine Reihe von Tipps für die Arbeit mit Software-Sammlungen und die Arbeit mit Python unter RHEL.
Kurz gesagt, um Python 3.6 über Red Hat Software Collections zu installieren:
Um eine Software-Sammlung zu verwenden, müssen Sie sie aktivieren:
Wenn Sie jedoch möchten, dass Python 3 dauerhaft aktiviert ist, können Sie Folgendes zu Ihrem ~ / .bashrc hinzufügen und sich dann abmelden und wieder anmelden. Jetzt ist Python 3 permanent auf Ihrem Weg.
Hinweis: Sobald Sie dies getan haben, erhalten Sie durch Eingabe von
python
Python 3.6 anstelle von Python 2.7.Lesen Sie den obigen Artikel für all dies und viel mehr Details.
quelle
Wenn Sie offizielle RHEL-Pakete wünschen, können Sie RHSCL (Red Hat Software Collections) verwenden.
Mehr Details:
Sie müssen Zugriff auf das Red Hat-Kundenportal haben, um vollständige Artikel lesen zu können.
quelle
Hier sind die Schritte, die ich zur Installation von Python3 ausgeführt habe:
quelle
yum install python34.x86_64
funktioniert, wenn Sieepel-release
installiert haben, was in dieser Antwort erklärt wird, und ich habe bestätigt, dass es funktioniert hatRHEL 7.3
quelle
Für RHEL unter Amazon Linux musste ich mit python3 Folgendes tun:
quelle
No package python34-devel available.
Voll funktionsfähig 36, wenn SCL nicht verfügbar ist (basierend auf Joys Eingabe)
Aktivieren Sie endlich die Umgebung ...
Dann python3
quelle
Sie können miniconda installieren ( https://conda.io/miniconda.html ). Das ist etwas mehr als nur Python 3.7, aber die Installation ist sehr einfach und unkompliziert.
Sie müssen die Lizenzvereinbarung akzeptieren und einige Optionen im interaktiven Modus auswählen (Standardeinstellungen akzeptieren). Ich glaube, es kann auch irgendwie leise installiert werden.
quelle
python
Befehl finden , ist er verpackt?Aktivieren Sie für Benutzer von AWS EC2 RHEL 7.5 ( verwenden Sie sudo ) die erforderlichen Repos
Installieren Sie Python 3.6
Installieren Sie andere Abhängigkeiten
quelle