Estou tentando instalar python3 no RHEL usando as seguintes etapas:
yum search python3
Que retornou No matches found for: python3
Seguido por:
yum search python
Nenhum dos resultados da pesquisa continha python3. O que devo tentar a seguir?
Estou tentando instalar python3 no RHEL usando as seguintes etapas:
yum search python3
Que retornou No matches found for: python3
Seguido por:
yum search python
Nenhum dos resultados da pesquisa continha python3. O que devo tentar a seguir?
Respostas:
É fácil instalá-lo manualmente:
Download (pode haver versões mais recentes no Python.org ):
$ wget https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tar.xzDescompactar
$ tar xf Python-3.*
$ cd Python-3.*
Preparar compilação
$ ./configureConstruir
$ makeInstalar
$ make install
OU se não desejar sobrescrever o pythonexecutável (mais seguro, pelo menos em algumas distros yumprecisa pythonser 2.x, como no RHEL6) - você pode instalar python3.*como uma instância simultânea no padrão do sistema com altinstall:
$ make altinstallAgora, se você quiser um diretório de instalação alternativo, poderá passar --prefixpara o configurecomando
Exemplo: para 'instalar' o Python em / opt / local, basta adicionar --prefix=/opt/local.
Após a make installetapa: Para usar sua nova instalação do Python, é possível que você ainda precise adicionar o [prefixo] / bin ao $PATHe [prefixo] / lib ao $LD_LIBRARY_PATH(dependendo do que --prefixvocê passou)
no acceptable C compiler found in $PATH when installing pythonreffer para http://stackoverflow.com/questions/19816275/no-acceptable-c-compiler-found-in-path-when-installing-python
./configure --with-ensurepip=installpara ativar pip3ou você não terá pip3instalado após a compilação.
A instalação do RPM é geralmente melhor, porque:
A Red Hat adicionou através do repositório EPEL :
sudo yum install -y epel-release
sudo yum install -y python34
# Install pip3
sudo yum install -y python34-setuptools # install easy_install-3.4
sudo easy_install-3.4 pip
Você pode criar seu virtualenv usando pyvenv:
pyvenv /tmp/foo
Com o CentOS7, pip3.6é fornecido como um pacote :)
sudo yum install -y epel-release
sudo yum install -y python36 python36-pip
Você pode criar seu virtualenv usando pyvenv:
python3.6 -m venv /tmp/foo
Se você usar o pyvenvscript, receberá um AVISO:
$ pyvenv-3.6 /tmp/foo
WARNING: the pyenv script is deprecated in favour of `python3.6 -m venv`
A Comunidade IUS fornece alguns pacotes atualizados para o RHEL e o CentOS . Os caras por trás são da Rackspace, então eu acho que eles são bastante confiáveis ...
Verifique o repo certo para você aqui:
sudo yum install -y https://repo.ius.io/ius-release-el6.rpm
sudo yum install -y python36u python36u-pip
Você pode criar seu virtualenv usando pyvenv:
python3.6 -m venv /tmp/foo
sudo yum install -y https://repo.ius.io/ius-release-el7.rpm
sudo yum install -y python36u python36u-pip
Você pode criar seu virtualenv usando pyvenv:
python3.6 -m venv /tmp/foo
https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/iu<200c><200b>s-release-1.0-14.ius.centos6.noarch.rpm Aqui está o caractere unicode: fileformat.info/info/unicode/char/200c/index.htm O URL na minha resposta original funciona, acabei de testar isto.
python34u-pip.
Além da resposta da gecco, eu alteraria a etapa 3 de:
./configure
para:
./configure --prefix=/opt/python3
Depois da instalação, você também pode:
# ln -s /opt/python3/bin/python3 /usr/bin/python3
É para garantir que a instalação não entre em conflito com o python instalado com o yum.
Veja a explicação que encontrei na Internet:
http://www.hosting.com/support/linux/installing-python-3-on-centosredhat-5x-from-source
/opt? /usr/localexiste especificamente para esse fim e é onde, ./configuresem explícito --prefix, o colocará.
export PATH=$PATH:/opt/python3/bin
Juntamente com o Python 2.7 e 3.3, o Red Hat Software Collections agora inclui o Python 3.4 - todos funcionam no RHEL 6 e 7.
Os documentos do RHSCL 2.0 estão em https://access.redhat.com/documentation/en-US/Red_Hat_Software_Collections/
Além de muitos artigos em developerblog.redhat.com.
editar
# 1. Install the Software Collections tools:
yum install scl-utils
# 2. Download a package with repository for your system.
# (See the Yum Repositories on external link. For RHEL/CentOS 6:)
wget https://www.softwarecollections.org/en/scls/rhscl/rh-python34/epel-6-x86_64/download/rhscl-rh-python34-epel-6-x86_64.noarch.rpm
# or for RHEL/CentOS 7
wget https://www.softwarecollections.org/en/scls/rhscl/rh-python34/epel-7-x86_64/download/rhscl-rh-python34-epel-7-x86_64.noarch.rpm
# 3. Install the repo package (on RHEL you will need to enable optional channel first):
yum install rhscl-rh-python34-*.noarch.rpm
# 4. Install the collection:
yum install rh-python34
# 5. Start using software collections:
scl enable rh-python34 bash
scl enable rh-python34 bash? Quais são as implicações para usar isso mais tarde?
wget https://www.softwarecollections.org/en/scls/rhscl/rh-python35/epel-6-x86_64/download/rhscl-rh-python35-epel-6-x86_64.noarch.rpm, mas não foi encontrado.
Use os repositórios SCL.
sudo sh -c 'wget -qO- http://people.redhat.com/bkabrda/scl_python33.repo >> /etc/yum.repos.d/scl.repo'
sudo yum install python33
scl enable python27
(Este último comando deverá ser executado sempre que você desejar usar python27 em vez do padrão do sistema.)
scl enable python33 bashpara lançar um novo shell que será habilitado para python 3 ou scl enable python33 'python hello.py'que irá executar o seu arquivo de python usando python 3 no shell atual
subscription-manager repos --enable rhel-7-server-optional-rpms --enable rhel-server-rhscl-7-rpms. Então você pode yum install rh-python36. Veja Como instalar o Python 3 no RHEL para obter mais informações.
Python3 foi recentemente adicionado ao EPEL7 como Python34.
Há um esforço contínuo (atualmente) para fazer diretrizes de empacotamento sobre como empacotar coisas para Python3 no EPEL7.
Veja https://bugzilla.redhat.com/show_bug.cgi?id=1219411
e https://lists.fedoraproject.org/pipermail/python-devel/2015-July/000721.html
Você pode fazer download de um RPMs de origem e RPMs binários para RHEL6 / CentOS6 aqui
Este é um backport da mais recente fonte de desenvolvimento do Fedora para o RHEL6 / CentOS6
createreponesses diretórios os torne ainda mais úteis para algumas pessoas.
baseurl: 0bin.net/paste/...
Vejo todas as respostas como pedindo para compilar python3 a partir do código ou instalando o pacote RPM binário. Aqui está outra resposta para ativar o EPEL (Pacotes Extra para Enterprise Linux) e instalar o python usando o yum. Passos para RHEL 7.5 (Maipo)
yum install wget –y
wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm –ivh epel-*.rpm
yum install python36
Veja também o link
sudo yum install python34-setuptools
Eu estava tendo o mesmo problema usando o python 2.7. Siga as etapas abaixo para atualizar com êxito para 3.6. Você também pode tentar este
Veja antes de atualizar a versão 2.x
python --version
Python 2.7.5Use o comando abaixo para atualizar seu python para a versão 3.x
yum install python3x
substitua x pelo número da versão desejada.
ou seja, para instalar o python 3.6 execute
yum install python36Depois disso, se você deseja definir esse python para sua versão padrão, adicione o arquivo bashrc
vi ~ / .bashrc
alias python='python3.6'execute o comando bash para aplicar as configurações
bash Agora você pode ver a versão abaixo
python --version
Python 3.6.3rh-python36.
Três etapas usando o Python 3.5 da Software Collections :
sudo yum install centos-release-scl
sudo yum install rh-python35
scl enable rh-python35 bash
Observe que o sudo não é necessário para o último comando. Agora podemos ver que python 3 é o padrão para o shell atual:
python --version
Python 3.5.1
Simplesmente pule o último comando, se você preferir o Python 2 como padrão para o shell atual.
Agora, digamos que os scripts do Python 3 causem um erro semelhante /usr/bin/env: python3: No such file or directory. Isso ocorre porque a instalação geralmente é feita em um caminho incomum:
/opt/rh/rh-python35/root/bin/python3
O acima seria normalmente um link simbólico. Se você deseja python3ser adicionado automaticamente ao $PATHpara todos os usuários na inicialização, uma maneira de fazer isso é adicionar um arquivo como:
sudo vim /etc/profile.d/rh-python35.sh
O que teria algo como:
#!/bin/bash
PATH=$PATH:/opt/rh/rh-python35/root/bin/
E agora, após uma reinicialização, se fizermos
python3 --version
Deveria apenas funcionar. Uma exceção seria um usuário gerado automaticamente como "jenkins" em um servidor Jenkins que não possui um shell. Nesse caso, adicionar manualmente o caminho $PATHnos scripts seria um caminho a percorrer.
Finalmente, se você estiver usando sudo pip3a instalação de pacotes, mas informa que o pip3 não pode ser encontrado, pode ser que você tenha um caminho seguro em / etc / sudoers . A verificação com sudo visudodeve confirmar isso. Para usar temporariamente o PATH padrão ao executar comandos, você pode executar, por exemplo:
sudo env "PATH=$PATH" pip3 --version
Veja esta pergunta para mais detalhes.
NOTA : Existe um Python 3.6 mais recente da Software Collections, mas eu não o recomendaria no momento, porque tive grandes dores de cabeça ao tentar instalar o Pycurl. Para o Python 3.5, isso não é um problema, porque eu fiz o sudo yum install sclo-python35-python-pycurlque funcionou imediatamente .
No package centos-release-scl available.
Se você está no RHEL e deseja um Python suportado pela Red Hat, use as coleções do Red Hat Software (RHSCL). Os pacotes EPEL e IUS não são suportados pelo Red Hat. Muitas das respostas acima apontam para as coleções de software do CentOS. Embora você possa instalá-los, eles não são os pacotes suportados do Red Hat para RHEL.
Além disso, a resposta mais votada fornece maus conselhos - No RHEL, você não deseja alterar /usr/bin/python, /usr/bin/python2porque provavelmente quebrará yume outras ferramentas administrativas do RHEL. Dê uma olhada /bin/yum, é um script Python que começa com #!/usr/bin/python. Se você compilar o Python a partir da fonte, não faça o make installcomo root. Isso substituirá /usr/bin/python. Se você quebrar yum, pode ser difícil restaurar o seu sistema.
Para obter mais informações, consulte Como instalar o Python 3, pip, venv, virtualenv e pipenv no RHEL em developers.redhat.com . Ele abrange a instalação e o uso do Python 3 do RHSCL, o ambiente virtual do Python e várias dicas para trabalhar com coleções de software e trabalhar com o Python no RHEL.
Em poucas palavras, para instalar o Python 3.6 através do Red Hat Software Collections:
$ su -
# subscription-manager repos --enable rhel-7-server-optional-rpms \
--enable rhel-server-rhscl-7-rpms
# yum -y install @development
# yum -y install rh-python36
# yum -y install rh-python36-numpy \
rh-python36-scipy \
rh-python36-python-tools \
rh-python36-python-six
Para usar uma coleção de software, você deve habilitá-la:
scl enable rh-python36 bash
No entanto, se você deseja que o Python 3 seja ativado permanentemente, você pode adicionar o seguinte ao seu ~ / .bashrc e, em seguida, efetuar logout e logon novamente. Agora o Python 3 está permanentemente no seu caminho.
# Add RHSCL Python 3 to my login environment
source scl_source enable rh-python36
Nota: depois de fazer isso, digitar pythonagora fornece o Python 3.6 em vez do Python 2.7.
Veja o artigo acima para tudo isso e muito mais detalhes.
Se você deseja pacotes RHEL oficiais, pode usar o RHSCL (Red Hat Software Collections)
Mais detalhes:
Você precisa ter acesso ao Portal do Cliente Red Hat para ler os artigos completos.
Aqui estão as etapas que eu segui para instalar o Python3:
yum install wget
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
sudo tar xvf Python-3.*
cd Python-3.*
sudo ./configure --prefix=/opt/python3
sudo make
sudo make install
sudo ln -s /opt/python3/bin/python3 /usr/bin/python3
$ /usr/bin/python3
Python 3.6.0
yum install python34.x86_64funciona se você tiver epel-releaseinstalado, o que esta resposta explica como, e eu confirmei que funcionouRHEL 7.3
$ cat /etc/*-release
NAME="Red Hat Enterprise Linux Server"
VERSION="7.3 (Maipo)
$ type python3
python3 is hashed (/usr/bin/python3)
Para RHEL no Amazon Linux, usando python3, eu tinha que fazer:
sudo yum instalar python34-devel
No package python34-devel available.
Trabalho completo 36 quando o SCL não está disponível (com base na entrada do Joys)
yum install wget –y
wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm –ivh epel-*.rpm
yum install python36
sudo yum install python34-setuptools
sudo mkdir /usr/local/lib/python3.6
sudo mkdir /usr/local/lib/python3.6/site-packages
sudo easy_install-3.6 pip
Por fim, ative o ambiente ...
pyvenv-3.6 py3
source py3/bin/activate
Então python3
Você pode instalar o miniconda ( https://conda.io/miniconda.html ). Isso é um pouco mais do que apenas o python 3.7, mas a instalação é muito direta e simples.
curl https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O
sudo yum install bzip2
bash Miniconda3-latest-Linux-x86_64.sh
Você precisará aceitar o contrato de licença e escolher algumas opções no modo interativo (aceite os padrões). Eu acredito que também pode ser instalado silenciosamente de alguma forma.
pythoncomando real depois, ele está empacotado?
Para aqueles que trabalham no AWS EC2 RHEL 7.5, ( use sudo ) habilite os repositórios necessários
yum-config-manager --enable rhui-REGION-rhel-server-optional
yum-config-manager --enable rhui-REGION-rhel-server-rhscl
Instale o Python 3.6
yum install rh-python36
Instale outras dependências
yum install rh-python36-numpy rh-python36-scipy rh-python36-python-tools rh-python36-python-six