Próbuję zainstalować python3 na RHEL, wykonując następujące kroki:
yum search python3
Który wrócił No matches found for: python3
Śledzony przez:
yum search python
Żaden z wyników wyszukiwania nie zawierał python3. Co powinienem spróbować dalej?
python
python-3.x
rhel
Chander Shivdasani
źródło
źródło
Odpowiedzi:
Łatwo jest zainstalować go ręcznie:
Pobierz (mogą być nowsze wersje na Python.org ):
Rozsunąć suwak
Przygotuj kompilację
Budować
zainstalować
LUB jeśli nie chcesz nadpisywać
python
pliku wykonywalnego (bezpieczniej, przynajmniej w niektórych dystrybucjachyum
musipython
być 2.x, na przykład dla RHEL6) - możesz zainstalowaćpython3.*
jako współbieżną instancję domyślną systemu zaltinstall
:Teraz, jeśli chcesz alternatywnego katalogu instalacyjnego, możesz przejść
--prefix
doconfigure
polecenia.Przykład: aby „zainstalować” Pythona w / opt / local, po prostu dodaj
--prefix=/opt/local
.Po
make install
kroku: Aby użyć nowej instalacji Pythona, może się zdarzyć, że nadal będziesz musiał dodać [przedrostek] / bin do$PATH
i [przedrostek] / lib do$LD_LIBRARY_PATH
(w zależności od--prefix
podanego)źródło
no acceptable C compiler found in $PATH when installing python
./configure --with-ensurepip=install
aby włączyćpip3
, inaczej nie będzieszpip3
instalować po kompilacji.Instalacja z RPM jest generalnie lepsza, ponieważ:
Rozwiązanie 1: repozytoria Red Hat i EPEL
Red Hat dodał poprzez repozytorium EPEL :
[EPEL] Jak zainstalować Python 3.4 na CentOS 6
Możesz stworzyć swój virtualenv używając
pyvenv
:[EPEL] Jak zainstalować Python 3.6 na CentOS 7
Z CentOS7
pip3.6
jest dostarczany jako pakiet :)Możesz stworzyć swój virtualenv używając
pyvenv
:Jeśli użyjesz
pyvenv
skryptu, otrzymasz OSTRZEŻENIE:Rozwiązanie 2: repozytoria społeczności IUS
Społeczność IUS zapewnia kilka aktualnych pakietów dla RHEL i CentOS . Faceci za nim są z Rackspace, więc myślę, że są całkiem godni zaufania ...
https://ius.io/
Sprawdź tutaj odpowiednie repozytorium:
https://ius.io/setup
[IUS] Jak zainstalować Python 3.6 na CentOS 6
Możesz stworzyć swój virtualenv używając
pyvenv
:[IUS] Jak zainstalować Python 3.6 na CentOS 7
Możesz stworzyć swój virtualenv używając
pyvenv
:źródło
https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/iu<200c><200b>s-release-1.0-14.ius.centos6.noarch.rpm
Oto znak Unicode: fileformat.info/info/unicode/char/200c/index.htm URL w mojej oryginalnej odpowiedzi działa, właśnie przetestowałem to.python34u-pip
.Oprócz odpowiedzi gecco zmieniłbym krok 3 z:
do:
Następnie po instalacji możesz również:
Ma to na celu zapewnienie, że instalacja nie będzie kolidować z pythonem zainstalowanym z yum.
Zobacz wyjaśnienie, które znalazłem w Internecie:
http://www.hosting.com/support/linux/installing-python-3-on-centosredhat-5x-from-source
źródło
/opt
?/usr/local
istnieje specjalnie w tym celu i tam./configure
bez wyraźnego--prefix
umieszczenia go.export PATH=$PATH:/opt/python3/bin
Wraz z Pythonem 2.7 i 3.3, Red Hat Software Collections zawiera teraz Python 3.4 - wszystko działa zarówno na RHEL 6, jak i 7.
Dokumenty RHSCL 2.0 są dostępne pod adresem https://access.redhat.com/documentation/en-US/Red_Hat_Software_Collections/
Oraz wiele artykułów na developerblog.redhat.com.
edytować
Postępuj zgodnie z poniższymi instrukcjami, aby zainstalować Python 3.4 na RHEL 6/7 lub CentOS 6/7:
źródło
scl enable rh-python34 bash
? Jakie są konsekwencje późniejszego używania tego?wget https://www.softwarecollections.org/en/scls/rhscl/rh-python35/epel-6-x86_64/download/rhscl-rh-python35-epel-6-x86_64.noarch.rpm
, ale nie znaleziono.Użyj repozytoriów SCL.
(To ostatnie polecenie będzie musiało być uruchamiane za każdym razem, gdy chcesz użyć języka python27 zamiast domyślnego systemu).
źródło
scl enable python33 bash
aby uruchomić nową powłokę, która będzie włączona dla Pythona 3 lubscl enable python33 'python hello.py'
która będzie uruchamiać plik Pythona przy użyciu Pythona 3 w bieżącej powłocesubscription-manager repos --enable rhel-7-server-optional-rpms --enable rhel-server-rhscl-7-rpms
. Wtedy możeszyum install rh-python36
. Zobacz Jak zainstalować Python 3 na RHEL, aby uzyskać więcej informacji.Python3 został niedawno dodany do EPEL7 jako Python34.
Trwają (obecnie) wysiłki, aby opracować wytyczne dotyczące pakowania elementów dla Python3 w EPEL7.
Zobacz https://bugzilla.redhat.com/show_bug.cgi?id=1219411
i https://lists.fedoraproject.org/pipermail/python-devel/2015-July/000721.html
źródło
Możesz pobrać źródłowe RPM i binarne RPM dla RHEL6 / CentOS6 stąd
To jest backport z najnowszego źródła rozwoju Fedory do RHEL6 / CentOS6
źródło
createrepo
tych katalogów uczyniłoby je jeszcze bardziej przydatne dla niektórych osób.baseurl
: 0bin.net/paste/ ...Widzę wszystkie odpowiedzi jako prośbę o skompilowanie python3 z kodu lub zainstalowanie binarnego pakietu RPM. Oto kolejna odpowiedź, aby włączyć EPEL (Extra Packages for Enterprise Linux), a następnie zainstalować Pythona za pomocą yum. Kroki dla RHEL 7.5 (Maipo)
Zobacz także link
źródło
sudo yum install python34-setuptools
Miałem ten sam problem, używając Pythona 2.7. Wykonaj poniższe kroki, aby pomyślnie uaktualnić do wersji 3.6. Możesz też spróbować tego -
Zobacz przed aktualizacją wersja 2.x
Użyj poniższego polecenia, aby zaktualizować Pythona do wersji 3.x-
yum install python3x
zamień x na żądany numer wersji.
czyli do instalacji Pythona 3.6 wykonaj
Następnie, jeśli chcesz ustawić ten Python na domyślną wersję, w pliku bashrc dodaj
vi ~ / .bashrc
wykonaj polecenie bash, aby zastosować ustawienia
Teraz możesz zobaczyć wersję poniżej
źródło
rh-python36
.Trzy kroki przy użyciu Pythona 3.5 przez kolekcje oprogramowania :
Zauważ, że sudo nie jest potrzebne w ostatnim poleceniu. Teraz widzimy, że Python 3 jest domyślnym dla bieżącej powłoki:
Po prostu pomiń ostatnie polecenie, jeśli wolisz, aby Python 2 był domyślnym dla bieżącej powłoki.
Powiedzmy teraz, że twoje skrypty Python 3 powodują błąd, taki jak
/usr/bin/env: python3: No such file or directory
. Dzieje się tak, ponieważ instalacja zwykle odbywa się na nietypowej ścieżce:Powyższe normalnie byłoby dowiązaniem symbolicznym. Jeśli chcesz
python3
być automatycznie dodawany do$PATH
wszystkich użytkowników podczas uruchamiania, jednym ze sposobów jest dodanie pliku takiego jak:Który miałby coś takiego:
A teraz po ponownym uruchomieniu, jeśli to zrobimy
Powinno po prostu działać. Jedynym wyjątkiem byłby automatycznie generowany użytkownik, taki jak „jenkins”, na serwerze Jenkins, który nie ma powłoki. W takim przypadku ręczne dodanie ścieżki do
$PATH
w skryptach byłoby jednym ze sposobów.Wreszcie, jeśli używasz
sudo pip3
do instalowania pakietów, ale mówi ci, że nie można znaleźć pip3, może to oznaczać, że masz bezpieczną_ścieżkę w / etc / sudoers . Sprawdzenie zsudo visudo
powinno to potwierdzić. Aby tymczasowo użyć standardowej PATH podczas uruchamiania poleceń, możesz na przykład:Zobacz to pytanie, aby uzyskać więcej informacji.
UWAGA : Jest nowszy Python 3.6 od Software Collections, ale nie polecałbym go w tej chwili, ponieważ miałem poważne bóle głowy, próbując zainstalować Pycurl. W przypadku Pythona 3.5 nie stanowi to problemu, ponieważ właśnie zrobiłem,
sudo yum install sclo-python35-python-pycurl
co zadziałało po wyjęciu z pudełka.źródło
No package centos-release-scl available.
Jeśli korzystasz z RHEL i chcesz mieć język Python obsługiwany przez Red Hat, użyj kolekcji oprogramowania Red Hat (RHSCL). Pakiety EPEL i IUS nie są obsługiwane przez firmę Red Hat. Również wiele z powyższych odpowiedzi wskazuje na kolekcje oprogramowania CentOS. Chociaż możesz je zainstalować, nie są to pakiety obsługiwane przez Red Hat dla RHEL.
Ponadto, najwyżej głosowana odpowiedź daje złą radę - na RHEL nie chcesz zmieniać
/usr/bin/python
,/usr/bin/python2
ponieważ prawdopodobnie zepsujeszyum
i inne narzędzia administracyjne RHEL. Spójrz/bin/yum
, to skrypt w Pythonie, który zaczyna się od#!/usr/bin/python
. Jeśli kompilujesz Pythona ze źródła, nie rób tegomake install
jako root. To nadpisze/usr/bin/python
. Jeśli się zepsujeszyum
, przywrócenie systemu może być trudne.Aby uzyskać więcej informacji, zobacz Jak zainstalować Python 3, pip, venv, virtualenv i pipenv w RHEL na developers.redhat.com . Obejmuje instalowanie i używanie Python 3 z RHSCL, używanie wirtualnych środowisk Python oraz szereg wskazówek dotyczących pracy z kolekcjami oprogramowania i pracy z Pythonem w RHEL.
Krótko mówiąc, aby zainstalować Python 3.6 za pośrednictwem Red Hat Software Collections:
Aby korzystać z kolekcji oprogramowania, musisz ją włączyć:
Jeśli jednak chcesz, aby Python 3 był na stałe włączony, możesz dodać następujące elementy do swojego ~ / .bashrc, a następnie wylogować się i zalogować ponownie. Teraz Python 3 jest na twojej drodze.
Uwaga: kiedy już to zrobisz, wpisanie
python
daje teraz Python 3.6 zamiast Python 2.7.Zobacz powyższy artykuł, aby dowiedzieć się wszystkiego i dużo więcej szczegółów.
źródło
Jeśli chcesz oficjalne pakiety RHEL, możesz użyć RHSCL (Red Hat Software Collections)
Więcej szczegółów:
Aby przeczytać pełne artykuły, musisz mieć dostęp do portalu klienta Red Hat.
źródło
Oto kroki, które wykonałem, aby zainstalować Python3:
źródło
yum install python34.x86_64
działa, jeśliepel-release
zainstalowany, co ta odpowiedź wyjaśnia, w jaki sposób, i potwierdził, że pracował naRHEL 7.3
źródło
Dla RHEL na Amazon Linux, używając python3 musiałem zrobić:
źródło
No package python34-devel available.
Pełna praca 36, gdy SCL nie jest dostępny (na podstawie danych wejściowych Joys)
Wreszcie aktywuj środowisko ...
Następnie python3
źródło
Możesz zainstalować minicondę ( https://conda.io/miniconda.html ). To trochę więcej niż tylko Python 3.7, ale instalacja jest bardzo prosta i prosta.
Musisz zaakceptować umowę licencyjną i wybrać kilka opcji w trybie interaktywnym (zaakceptuj wartości domyślne). Uważam, że można go też jakoś zainstalować cicho.
źródło
python
później aktualnego polecenia, czy jest ono opakowane?Dla osób pracujących na AWS EC2 RHEL 7.5 ( użyj sudo ) włącz wymagane repozytoria
Zainstaluj Python 3.6
Zainstaluj inne zależności
źródło