I'gostaria de instalar o mais recente Python, que é 3.6 no momento deste post. No entanto, o repositório está dizendo que o Python 3.4.2 é a versão mais recente.
I'já tentei:
$ sudo apt-get update
$ sudo apt-get install python3
python3 is already the newest version.
$ python -V
Python 3.4.2
Para atualizar para o Python 3.6 em minha estação de trabalho Windows, eu simplesmente baixei um exe, cliquei "next" algumas vezes, e ele's feito. Qual'é o procedimento adequado e oficialmente aceito para instalar o Python 3.6 no Debian Jessie?
Você pode instalar o Python-3.6
no Debian 8 da seguinte forma:
wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz
tar xvf Python-3.6.9.tgz
cd Python-3.6.9
./configure --enable-optimizations --enable-shared
make -j8
sudo make altinstall
python3.6
É recomendado utilizar make altinstall
de acordo com o site oficial.
Se você quiser que a pip' seja incluída, você precisa adicionar
--com-ensurepip=install' à sua chamada de configuração. Para mais detalhes, veja `./configure --help'.
Atenção: 'make install' pode sobrepor ou mascarar o binário python. Portanto,
make altinstall' é recomendado ao invés de
make install', uma vez que apenas instala `exec_prefix/bin/pythonversion'.
Alguns pacotes precisam de ser instalados para evitar alguns problemas conhecidos, veja: Problemas comuns de compilação(atualizado)
Ubuntu/Debian:
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev
Alternativa de libreadline-dev:
sudo apt install libedit-dev
Fedora/CentOS/RHEL(aws ec2):
sudo yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel \
openssl-devel xz xz-devel libffi-devel
Alternativa de openssl-devel:
sudo yum install compat-openssl10-devel --allowerasing
**Actualização***
Você pode baixar o último python-x.y.z.tar.gz
a partir de aqui.
Para definir uma versão python padrão e alternar facilmente entre elas , você precisa atualizar suas update-alternatives
com a versão python múltipla.
Deixe's dizer que você instalou o python3.7
no debian stretch , utilize o comando whereis python
para localizar o binário (*/bin/python
). e,por exemplo:
/usr/local/bin/python3.7
/usr/bin/python2.7
/usr/bin/python3.5
Adicione as versões python:
update-alternatives --install /usr/bin/python python /usr/local/bin/python3.7 50
update-alternatives --install /usr/bin/python python /usr/bin/python2.7 40
update-alternatives --install /usr/bin/python python /usr/bin/python3.5 30
O python3.7
com a prioridade 50
é agora o seu python padrão , o python -V
irá imprimir:
Python 3.7.0b2
Para alternar entre eles, use:
update-alternatives --config python
Saída de amostra:
There are 3 choices for the alternative python (providing /usr/bin/python).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/local/bin/python3.7 50 auto mode
1 /usr/bin/python2.7 40 manual mode
2 /usr/bin/python3.5 30 manual mode
3 /usr/local/bin/python3.7 50 manual mode
Press <enter> to keep the current choice[*], or type selection number:
Você pode querer dar uma olhada no pyenv
: https://github.com/yyuu/pyenv . Para citar o tutorial pyenv
no Laboratório Amaral:
Anteriormente conhecido como Pythonbrew, pyenv permite que você mude o versão Python, instalar várias versões Python, definir diretório (projeto) - versões Python específicas, e sim criar/gerenciar virtuais ambientes python (" virtualenvs"). Tudo isso é feito no estilo *NIX máquinas (Linux e OS X) sem depender do próprio Python e funciona ao nível do utilizador sem necessidade de quaisquer comandos sudo.
O Debian não tem os repositórios Python 3.6 nele's. Aqui's um instantâneo do estado actual do Python3:
wheezy (oldstable) (python): interactive high-level object-oriented language (default python3 version)
3.2.3-6: all
jessie (stable) (python): interactive high-level object-oriented language (default python3 version)
3.4.2-2: amd64 arm64 armel armhf i386 mips mipsel powerpc ppc64el s390x
stretch (testing) (python): interactive high-level object-oriented language (default python3 version)
3.5.1-4: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x
sid (unstable) (python): interactive high-level object-oriented language (default python3 version)
3.5.1-4: alpha amd64 arm64 armel armhf hppa hurd-i386 i386 kfreebsd-amd64 kfreebsd-i386 m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390x sh4 sparc64 x32
Você pode conferir estes aqui.
Você pode instalar o 3.6 a partir do código fonte, ou usando algo como Linuxbrew para a instalação de um diretório home.