Questão Como faço para instalar o Python 3.6 usando o apt-get?


Eu tentei o caminho normal sudo apt-get install python3.6mas ... bem ... isso não funcionou.

Então, como eu faria isso? (Eu prefiro não construí-lo sozinho)

Estou usando o Ubuntu 16.04.


278
2017-12-28 19:52


origem


Talvez o python 3.6 não esteja disponível para sua distribuição. Se você instalou aptitude, corre aptitude search python3 - ridgy


Respostas:


Ubuntu 14.04 (Trusty), 16.04 (Xenial) e 18.04 (Bionic)

Se você estiver usando o Ubuntu 14.04, 16.04, ou 18.04, você pode usar o PPA deadfolk de Felix Krull em https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa:

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.6

Alternativamente, você pode usar o PPA de J Fernyhough em https://launchpad.net/~jonathonf/+archive/ubuntu/python-3.6:

sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt-get update
sudo apt-get install python3.6

Ubuntu 16.10 e 17.04

Se você estiver usando o Ubuntu 16.10 ou 17.04, então o Python 3.6 está no repositório universe, então você pode simplesmente executar:

sudo apt-get update
sudo apt-get install python3.6

Após a instalação para o Ubuntu 14.04, 16.04, 16.10 e 17.04

Para invocar o intérprete do Python 3.6, execute python3.6.

Ubuntu 17.10

O Ubuntu 17.10 já vem com o Python 3.6 como padrão. Apenas corra python3 para invocá-lo.


411
2017-12-28 20:26



Note que python3.6 no Ubuntu 16.10 é uma versão beta que tem alguns problemas (como um vazamento de memória muito doloroso em dict que aparece em algumas circunstâncias raras). - Marius Gedminas
CUIDADO - Em nenhuma circunstância, ser tentado a correr sudo apt remove python3.5 ou qualquer coisa assim; Python é mais fundamentalmente cozido no Ubuntu do que você pensa, e você pode quebrar sua instalação do Ubuntu. Se você quiser python3 mapear para python3.6, crie um symlink em vez disso! - Huw Walters
Vejo que não há python3.6-pip pacote, e então eu usei curl https://bootstrap.pypa.io/get-pip.py | sudo python3.6 para instalar pip. - A-B-B
De alguma forma python de ppa:jonathonf/python-3.6 chegou com pip quebrado e não easy_install em 14.04. No entanto, eu consegui consertá-lo instalando o easy_install e reinstalando o pip via curl https://bootstrap.pypa.io/ez_setup.py -o - | python3.6 && python3.6 -m easy_install pipApenas no caso de alguém se deparar com o mesmo problema ... - FirefoxMetzger
Como alguns outros comentadores acima, eu também tive problemas para pip para instalar com ppa:jonathonf/python-3.6. Por outro lado, ppa:deadsnakes/ppa funcionou sem falhas (apt-get install python3.6 python3.6-venv -y). - Michael Herrmann


eu recomendaria pyenv para resolver seus problemas. Não usa Aptitude e faz envolvem "construir você mesmo", mas é totalmente automatizado. Você pode criar e instalar uma nova (ou antiga) versão do Python simplesmente dizendo pyenv install 3.6.0. Tudo corre como seu usuário, então você não precisa se preocupar bagunçando o Python usado pelo próprio Ubuntu.

Além disso, a resposta para a seguinte pergunta "Como instalo o Python 3.7 usando o apt-get?" tem a mesma resposta: pyenv update; pyenv install 3.7.0. Ele geralmente funcionará no mesmo dia de um lançamento, porque você não precisa esperar que alguém o empacote para o Ubuntu.

Instalar pyenv

  1. Instale os cabeçalhos necessários para construir CPythons (Pythons exóticos como PyPy ou Jython podem ter outras dependências):

    sudo apt-get install -y build-essential libbz2-dev libssl-dev libreadline-dev \
                            libsqlite3-dev tk-dev
    
    # optional scientific package headers (for Numpy, Matplotlib, SciPy, etc.)
    sudo apt-get install -y libpng-dev libfreetype6-dev    
    
  2. Execute o script do instalador (instala o pyenv e alguns plugins pyenv muito úteis do autor original; veja Aqui para mais)

    curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
    
  3. Adicione linhas de inicialização ao seu ~/.profile ou ~/.bashrc (menciona no final do script de instalação):

    export PATH="~/.pyenv/bin:$PATH"
    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"
    
  4. Reinicie seu shell (feche e abra ou exec $SHELL) ou recarregue o script de perfil. (com, e. source ~/.bashrc)

Feito!

Configurando um ambiente

Para não tocar no sistema Python (geralmente uma má idéia; serviços no nível do sistema operacional podem estar dependendo de algumas versões de bibliotecas específicas, etc.) crie seu próprio ambiente, é fácil! Melhor ainda, não sudo, para isso ou pip instala!

  1. Instale sua versão preferida do Python (isso fará o download da fonte e a construirá para o usuário, sem necessidade de entrada)

    pyenv install 3.6.0
    
  2. Faça um virtualenv para que você possa fazer outros mais tarde, se quiser

    pyenv virtualenv 3.6.0 general
    
  3. Torná-lo globalmente ativo (para seu usuário)

    pyenv global general
    
  4. Faça o que quiser com o Python / pip, etc. É seu.

Se você quiser limpar suas bibliotecas mais tarde, você pode excluir o virtualenv (pyenv uninstall general) ou fazer um novo (pyenv virtualenv 3.6.0 other_proj). Você também pode ter ambientes ativos por diretório: pyenv local other_proj vai cair um .python-version arquivo em sua pasta atual e toda vez que você invocar Python ou utilitários Python instalados por pip a partir dele ou sob ele, eles serão shimmed por pyenv.

Solução de problemas

  • bash: pyenv: command not found, fish: Unknown command 'pyenv'

    1. Verifique seu $PATH, deve haver uma entrada que termine em algo como .pyenv/bin. Se estiver faltando, certifique-se de seguir o número 3 AND # 4 (reinicie seu shell) em Instalar o pyenv acima.
  • pyenv: no such command 'virtualenv'

    1. Se você não usou o script do instalador, provavelmente instalou apenas o pacote root pyenv. Vejo pyenv-virtualenv para instruções para adicionar o plugin
    2. Se você usou o script do instalador, verifique se ele aparece pyenv commands.

104
2017-12-29 02:46



ou não-plural, por razões do Debian. - Nick T
Há uma ressalva, quando usando pyenv com Python 2.x (ou versões 3.x muito antigas antes da nova representação interna da cadeia Unicode acontecer): pyenv usa os sinalizadores de compilação upstream padrão e constrói com strings Unicode de 16 bits. As distribuições Linux geralmente são construídas com strings Unicode de 32 bits. Isso causa dor quando você instala algumas coisas em pyenons pyenv e não-pyenv, porque o cache de roda pip. - Marius Gedminas
Não sei, mas descobri esse problema ajudando alguém no IRC a depurar um problema em que um determinado pacote do Python (lxml?) Não funcionava devido a isso. Então acontece na prática, para algumas pessoas, e vale a pena conhecer. (A solução é rm -r ~/.cache/pip/wheels/.) - Marius Gedminas
Faz pyenv precisa ser instalado para todos os usuários que precisam do Python? E se eu tiver 3 usuários que precisam da mesma versão 3.6 do Python, ela terá que compilá-lo 3 vezes e levará 3x de espaço em disco? Se isso é verdade, então é uma merda…: / - Sarge Borsch
@SargeBorsch por padrão (se você usa o pyenv-installer) é uma instalação de usuário, mas não há nada que o impeça de instalá-lo /opt ou qualquer outra coisa e adicionando alguns links simbólicos para /bin. Eu acho que ser usuário apenas é extremamente útil; os usuários não precisam de sudo (além de libs). O espaço em disco é barato. - Nick T


Uma rota alternativa, se você não encontrar nenhum repositório de trabalho, poderá tentar compilar a si mesmo a partir da fonte. Você pode encontrar o código-fonte na página de download. Então baixe e descompacte o tarball; por exemplo para Python-3.6.1.tgz.

O processo para descompactar o arquivo tgz é:

tar -xvzf /path/to/yourfile.tgz

Quando estiver no caminho do arquivo para o qual o arquivo foi descompactado, execute:

./configure
make
make altinstall

E espero que isso resolva o problema para você.


12
2017-12-28 20:10



Pergunta diz (id preferably not build it on my own). Talvez seja melhor ir ao apt rota, se possível. - TheWanderer
Ok, vou dar uma olhada para ver se consigo encontrar algum repositório alternativo para você. Você já teve a chance de procurar no Google por repositórios alternativos? Não quero sugerir coisas que você já tentou. - Just In Time Berlake
Eu não sou o OP. Apenas fazendo uma sugestão. Eu não encontrei nenhum PPA para o 3.6, então o edifício pode ser o caminho necessário. Você provavelmente deve resolver isso na sua resposta embora. - TheWanderer
Seus comandos make irão falhar em um sistema que o usuário nunca construiu nada, pois há muitos pacotes necessários. "sudo apt instalar build-essential libssl-dev zlib1g-dev libncurses5-dev libncursesw5-dev libreadline-dev libsqlite3-dev libgdbm-dev libdb5.3-dev libbz2-dev libexpat1-dev liblzma-dev tk-dev" - Joe


Depende de qual versão do Ubuntu você está usando.

Ubuntu 16.10 e Ubuntu 17.04

Como o Python 3.6 está instalado no repositório do universo do Ubuntu 16.10 e do Ubuntu 17.04, você pode instalar diretamente o python 3.6 a partir do repositório. Apenas use os comandos abaixo:

sudo apt update
sudo apt install python3.6

Ubuntu 16.04

Existem duas maneiras de instalar o Python3.6 no Ubuntu 16.04

  • Compile e instale o python 3.6 no Ubuntu 16.04
  • Instale o python 3.6 no Ubuntu 16.04 do PPA

1. Compile e instale o python 3.6 no Ubuntu 16.04

Instale as dependências necessárias, baixe o código-fonte do python 3.6 e construa o ambiente e instale

sudo apt install build-essential checkinstall
sudo apt install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
tar xvf Python-3.6.0.tar.xz
cd Python-3.6.0/
./configure
sudo make altinstall

2. Instale o python 3.6 no Ubuntu 16.04 do PPA

Você pode instalar o Python 3.6 do PPA usando os comandos abaixo

sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt update
sudo apt install python3.6

Se o Python 3.6 estiver instalado corretamente, você poderá invocar o interpretador python executando python3.6 no terminal.

Eu espero que isso ajude. Se você tiver algum problema, verifique esta postagem no blog Aqui.


7
2018-01-04 18:51



Esta é essencialmente uma cópia da resposta aceita. Onde está o valor acrescentado da sua resposta? - Marc Vanhoomissen
O primeiro passo no Ubuntu 16.04 é para aqueles que querem compilar e instalar o python 3.6 por algum motivo. O processo de compilar e instalar o Python 3.6 no Ubuntu 16.04 não está disponível na resposta aceita ou em qualquer resposta no tópico. Os outros pontos são para deixar clara a versão do Ubuntu e como ela difere de outras respostas aceitas. - Aryal Bibek
PPA instala em 16.04 (Mint) aparecem quebrados. A instalação a partir das informações de origem é útil. - demented hedgehog


Para o Ubuntu 15.10 eu instalei com sucesso usando este método:

sudo add-apt-repository ppa:jonathonf/python-3.6

Mas eu editei este arquivo:

sudo vi /etc/apt/sources.list.d/jonathonf-ubuntu-python-3_6-wily.list

E eu mudei astuto para fiel e depois:

sudo apt-get update
sudo apt-get install python3.6

3
2018-06-14 06:59



Ubuntu 15.10? Ele foi EOL meses atrás. Hora de atualizar. - edwinksl


Considerar pyenv + pipenv que é substituir usando ambientes virtuais PIP + usando o Pipfile

Então no Pipfile

[requires]
python_version = "3.6"

https://stackoverflow.com/a/49800061/1689770


1
2017-09-02 02:40