J'essaye d'installer python3 sur RHEL en suivant les étapes suivantes:
yum search python3
Qui est revenu No matches found for: python3
Suivi par:
yum search python
Aucun des résultats de la recherche ne contenait python3. Que dois-je essayer ensuite?
python
python-3.x
rhel
Chander Shivdasani
la source
la source
Réponses:
Il est facile de l'installer manuellement:
Télécharger (il peut y avoir des versions plus récentes sur Python.org ):
Décompressez
Préparer la compilation
Construire
Installer
OU si vous ne voulez pas écraser l'
python
exécutable (plus sûr, au moins sur certaines distributionsyum
doitpython
être 2.x, comme pour RHEL6) - vous pouvez installer enpython3.*
tant qu'instance simultanée à la valeur par défaut du système avec unaltinstall
:Maintenant, si vous voulez un autre répertoire d'installation, vous pouvez passer
--prefix
à laconfigure
commande.Exemple: pour 'installer' Python dans / opt / local, ajoutez simplement
--prefix=/opt/local
.Après l'
make install
étape: Afin d'utiliser votre nouvelle installation Python, il se peut que vous deviez encore ajouter le [prefix] / bin au$PATH
et [prefix] / lib au$LD_LIBRARY_PATH
(en fonction de celui que--prefix
vous avez passé)la source
no acceptable C compiler found in $PATH when installing python
renvoyé à http://stackoverflow.com/questions/19816275/no-acceptable-c-compiler-found-in-path-when-installing-python./configure --with-ensurepip=install
à activerpip3
, ou vous ne l'aurez paspip3
installé après la compilation.L'installation à partir de RPM est généralement meilleure, car:
Solution 1: référentiels Red Hat et EPEL
Red Hat a ajouté via le référentiel EPEL :
[EPEL] Comment installer Python 3.4 sur CentOS 6
Vous pouvez créer votre virtualenv en utilisant
pyvenv
:[EPEL] Comment installer Python 3.6 sur CentOS 7
Avec CentOS7,
pip3.6
est fourni sous forme de package :)Vous pouvez créer votre virtualenv en utilisant
pyvenv
:Si vous utilisez le
pyvenv
script, vous obtiendrez un AVERTISSEMENT:Solution 2: référentiels de la communauté IUS
La communauté IUS fournit des packages à jour pour RHEL et CentOS . Les gars derrière sont de Rackspace, donc je pense qu'ils sont assez dignes de confiance ...
https://ius.io/
Vérifiez le bon repo pour vous ici:
https://ius.io/setup
[IUS] Comment installer Python 3.6 sur CentOS 6
Vous pouvez créer votre virtualenv en utilisant
pyvenv
:[IUS] Comment installer Python 3.6 sur CentOS 7
Vous pouvez créer votre virtualenv en utilisant
pyvenv
:la source
https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/iu<200c><200b>s-release-1.0-14.ius.centos6.noarch.rpm
Voici le caractère unicode: fileformat.info/info/unicode/char/200c/index.htm L'URL dans ma réponse originale fonctionne, je viens de tester il.python34u-pip
.En plus de la réponse de gecco, je changerais l'étape 3 de:
à:
Ensuite, après l'installation, vous pouvez également:
C'est pour s'assurer que l'installation n'entrera pas en conflit avec python installé avec yum.
Voir l'explication que j'ai trouvée sur Internet:
http://www.hosting.com/support/linux/installing-python-3-on-centosredhat-5x-from-source
la source
/opt
?/usr/local
existe spécifiquement à cet effet et c'est là./configure
que sans explicite--prefix
le placera.export PATH=$PATH:/opt/python3/bin
Avec Python 2.7 et 3.3, Red Hat Software Collections inclut désormais Python 3.4 - tous fonctionnent à la fois sur RHEL 6 et 7.
Les documents RHSCL 2.0 sont à https://access.redhat.com/documentation/en-US/Red_Hat_Software_Collections/
Plus de nombreux articles sur developerblog.redhat.com.
Éditer
Suivez ces instructions pour installer Python 3.4 sur RHEL 6/7 ou CentOS 6/7:
la source
scl enable rh-python34 bash
? Quelles sont les implications pour une utilisation ultérieure?wget https://www.softwarecollections.org/en/scls/rhscl/rh-python35/epel-6-x86_64/download/rhscl-rh-python35-epel-6-x86_64.noarch.rpm
, mais il n'a pas été trouvé.Utilisez les dépôts SCL.
(Cette dernière commande devra être exécutée chaque fois que vous souhaitez utiliser python27 plutôt que la valeur par défaut du système.)
la source
scl enable python33 bash
pour lancer un nouveau shell qui sera activé pour python 3 ouscl enable python33 'python hello.py'
qui exécutera votre fichier python en utilisant python 3 dans le shell actuelsubscription-manager repos --enable rhel-7-server-optional-rpms --enable rhel-server-rhscl-7-rpms
. Alors tu peuxyum install rh-python36
. Voir Comment installer Python 3 sur RHEL pour plus d'informations.Python3 a récemment été ajouté à EPEL7 en tant que Python34.
Des efforts sont (actuellement) en cours pour élaborer des directives de packaging sur la façon de conditionner des éléments pour Python3 dans EPEL7.
Voir https://bugzilla.redhat.com/show_bug.cgi?id=1219411
et https://lists.fedoraproject.org/pipermail/python-devel/2015-July/000721.html
la source
Vous pouvez télécharger un RPM source et des RPM binaires pour RHEL6 / CentOS6 à partir d' ici
Ceci est un backport du dernier rpm source de développement Fedora à RHEL6 / CentOS6
la source
createrepo
sur ces répertoires les rendrait encore plus utiles pour certaines personnes.baseurl
: 0bin.net/pasteJe vois toutes les réponses comme demandant soit de compiler python3 à partir du code, soit d'installer le package binaire RPM. Voici une autre réponse pour activer EPEL (Extra Packages for Enterprise Linux), puis installer python en utilisant yum. Étapes pour RHEL 7.5 (Maipo)
Voir aussi le lien
la source
sudo yum install python34-setuptools
J'avais le même problème en utilisant le python 2.7. Suivez les étapes ci-dessous pour réussir la mise à niveau vers la version 3.6. Vous pouvez également essayer celui-ci-
Voir avant de mettre à niveau la version 2.x
Utilisez la commande ci-dessous pour mettre à niveau votre python vers la version 3.x-
miam installer python3x
remplacez x par le numéro de version souhaité.
ie pour installer python 3.6 exécutez
Après cela, si vous souhaitez définir ce python pour votre version par défaut , ajoutez un fichier bashrc
vi ~ / .bashrc
exécuter la commande bash pour appliquer les paramètres
Vous pouvez maintenant voir la version ci-dessous
la source
rh-python36
.Trois étapes en utilisant Python 3.5 par Software Collections :
Notez que sudo n'est pas nécessaire pour la dernière commande. Nous pouvons maintenant voir que python 3 est la valeur par défaut du shell actuel:
Ignorez simplement la dernière commande si vous préférez avoir Python 2 par défaut pour le shell actuel.
Maintenant, disons que vos scripts Python 3 vous donnent une erreur comme
/usr/bin/env: python3: No such file or directory
. C'est parce que l'installation se fait généralement sur un chemin inhabituel:Ce qui précède serait normalement un lien symbolique. Si vous souhaitez
python3
être automatiquement ajouté au$PATH
pour tous les utilisateurs au démarrage, une façon de le faire consiste à ajouter un fichier comme:Ce qui aurait quelque chose comme:
Et maintenant après un redémarrage, si nous le faisons
Cela devrait juste fonctionner. Une exception serait un utilisateur généré automatiquement comme "jenkins" dans un serveur Jenkins qui n'a pas de shell. Dans ce cas, ajouter manuellement le chemin d'accès
$PATH
dans les scripts serait une solution.Enfin, si vous utilisez
sudo pip3
pour installer des packages, mais que cela vous indique que pip3 est introuvable, il se peut que vous ayez un secure_path dans / etc / sudoers . Vérifier avecsudo visudo
devrait le confirmer. Pour utiliser temporairement le PATH standard lors de l'exécution de commandes, vous pouvez faire, par exemple:Voir cette question pour plus de détails.
REMARQUE : Il existe un Python 3.6 plus récent de Software Collections, mais je ne le recommanderais pas pour le moment, car j'avais de gros maux de tête en essayant d'installer Pycurl. Pour Python 3.5, ce n'est pas un problème car je viens de faire
sudo yum install sclo-python35-python-pycurl
ce qui a fonctionné immédiatement.la source
No package centos-release-scl available.
Si vous êtes sur RHEL et souhaitez un Python pris en charge par Red Hat, utilisez les collections de logiciels Red Hat (RHSCL). Les packages EPEL et IUS ne sont pas pris en charge par Red Hat. De nombreuses réponses ci-dessus concernent également les collections de logiciels CentOS. Bien que vous puissiez les installer, ce ne sont pas les packages pris en charge par Red Hat pour RHEL.
En outre, la réponse la plus votée donne de mauvais conseils - Sur RHEL, vous ne voulez pas changer
/usr/bin/python
,/usr/bin/python2
car vous risquez de casseryum
et d'autres outils d'administration RHEL. Jetez un coup d'œil/bin/yum
, c'est un script Python qui commence par#!/usr/bin/python
. Si vous compilez Python à partir des sources, ne faites pas de fichier en tantmake install
que root. Cela écrasera/usr/bin/python
. Si vous cassez,yum
il peut être difficile de restaurer votre système.Pour plus d'informations, consultez Comment installer Python 3, pip, venv, virtualenv et pipenv sur RHEL sur developer.redhat.com . Il couvre l'installation et l'utilisation de Python 3 à partir de RHSCL, l'utilisation d'environnements virtuels Python, et un certain nombre de conseils pour travailler avec des collections de logiciels et travailler avec Python sur RHEL.
En un mot, pour installer Python 3.6 via les collections de logiciels Red Hat:
Pour utiliser une collection de logiciels, vous devez l'activer:
Cependant, si vous voulez que Python 3 soit activé en permanence, vous pouvez ajouter ce qui suit à votre ~ / .bashrc, puis vous déconnecter et vous reconnecter. Maintenant, Python 3 est en permanence sur votre chemin.
Remarque: une fois que vous faites cela, taper
python
vous donne maintenant Python 3.6 au lieu de Python 2.7.Voir l'article ci-dessus pour tout cela et beaucoup plus de détails.
la source
Si vous voulez des packages RHEL officiels, vous pouvez utiliser RHSCL (Red Hat Software Collections)
Plus de détails:
Vous devez avoir accès au portail client Red Hat pour lire les articles complets.
la source
Voici les étapes que j'ai suivies pour installer Python3:
la source
yum install python34.x86_64
fonctionne si vous avezepel-release
installé, ce que cette réponse explique comment, et j'ai confirmé que cela fonctionnaitRHEL 7.3
la source
Pour RHEL sur Amazon Linux, en utilisant python3, je devais faire:
la source
No package python34-devel available.
Fonctionnement complet 36 lorsque SCL n'est pas disponible (basé sur l'entrée Joys)
Activez enfin l'environnement ...
Puis python3
la source
Vous pouvez installer miniconda ( https://conda.io/miniconda.html ). C'est un peu plus que juste python 3.7 mais l'installation est très simple et directe.
Vous devrez accepter le contrat de licence et choisir certaines options en mode interactif (accepter les valeurs par défaut). Je pense qu'il peut également être installé silencieusement d'une manière ou d'une autre.
la source
python
commande réelle par la suite, est-elle encapsulée?Pour ceux qui travaillent sur AWS EC2 RHEL 7.5, ( utilisez sudo ) activez les dépôts requis
Installez Python 3.6
Installer d'autres dépendances
la source