Ho provato nel modo normale, sudo apt-get install python3.6
, ma... beh... non ha funzionato.
Quindi, come potrei procedere? (Preferirei non costruirlo da solo)_.
Sto usando Ubuntu 16.04.
Se state usando Ubuntu 14.04 o 16.04, potete usare il PPA deadsnakes di Felix Krull a https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa:
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.6
In alternativa, è possibile utilizzare il PPA di J Fernyhough all'indirizzo 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
Se stai usando Ubuntu 16.10 o 17.04, allora Python 3.6 è nel repository universe, quindi puoi semplicemente eseguire:
sudo apt-get update
sudo apt-get install python3.6
Per invocare l'interprete Python 3.6, eseguire python3.6
.
Ubuntu 17.10 e 18.04 hanno già Python 3.6 come predefinito. Basta eseguire python3
per richiamarlo.
Vi consiglio pyenv per risolvere i vostri problemi. Non usa Aptitude, e comporta la "costruzione da soli", ma è completamente automatizzato. Potete costruire e installare una nuova (o vecchia) versione di Python semplicemente dicendo pyenv install 3.6.0
. Tutto viene eseguito come tuo utente, quindi non devi preoccuparti di incasinare il Python usato da Ubuntu stesso.
Inoltre, la risposta alla domanda successiva "Come posso installare Python 3.7 usando apt-get?" ha la stessa risposta: pyenv update; pyenv install 3.7.0
. Generalmente funziona lo stesso giorno di un rilascio perché non c'è bisogno di aspettare che qualcun altro lo pacchettizzi per Ubuntu. Vedere tutte le versioni che si possono installare con pyenv install --list
.
Installa gli strumenti e gli header necessari per costruire CPythons (Pythons esotici come PyPy o Jython potrebbero avere altre dipendenze). Git è usato da pyenv, in più permette anche la compilazione/installazione dei rami dei sorgenti, quindi si potrebbe installare qualsiasi cosa sia la 3.8 in questo momento, cioè il ramo master di CPython appena uscito da GitHub:
sudo apt-get install -y git
sudo apt-get install -y build-essential libbz2-dev libssl-dev libreadline-dev \
libffi-dev libsqlite3-dev tk-dev
# intestazioni di pacchetti scientifici opzionali (per Numpy, Matplotlib, SciPy, ecc.)
sudo apt-get install -y libpng-dev libfreetype6-dev
Eseguire lo script di installazione (installa pyenv e alcuni plugin pyenv molto utili dell'autore originale; vedere qui per saperne di più)
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
Aggiungi le linee di init al tuo ~/.profile
o ~/.bashrc
(lo menziona alla fine dello script di installazione):
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
Riavvia la tua shell (chiudi & apri o exec $SHELL
) o ricarica lo script del profilo. (con per esempio source ~/.bashrc
)
Fatto!
Per non toccare il sistema Python (generalmente una cattiva idea; i servizi a livello di OS potrebbero fare affidamento su alcune versioni specifiche di librerie, ecc. Ancora meglio, nessuna installazione sudo
, per esso o pip
!
Installa la tua versione preferita di Python (questo scaricherà il sorgente e lo costruirà per il tuo utente, nessun input richiesto)
pyenv install 3.6.0
Rendetelo un virtualenv in modo da poterne fare altri in seguito, se volete
pyenv virtualenv 3.6.0 generale
Rendilo globalmente attivo (per il tuo utente)
pyenv global generale
Fate quello che volete con il Python/pip, ecc. È tuo.
Se volete ripulire le vostre librerie in seguito, potete cancellare il virtualenv (pyenv uninstall general
) o crearne uno nuovo (pyenv virtualenv 3.6.0 other_proj
). Potete anche avere ambienti attivi per directory: pyenv local other_proj
lascerà un file .python-version
nella vostra cartella corrente e ogni volta che invocherete Python o le utility Python installate con pip da essa o sotto di essa, esse saranno shimmate da pyenv.
bash: pyenv: comando non trovato
, fish: Comando sconosciuto 'pyenv'
$PATH
, ci dovrebbe essere una voce che finisce con qualcosa come .pyenv/bin
. Se manca, assicuratevi di aver seguito #3 e #4 (riavviare la shell) in Install pyenv sopra.pyenv: no such command 'virtualenv'
comandi pyenv
.Un percorso alternativo, se non riesci a trovare alcun repository funzionante, potrebbe essere quello di provare a compilarti da solo dai sorgenti. Puoi trovare il codice sorgente nella pagina di download. Poi scarica e togli il tarball; per esempio per Python-3.6.1.tgz
.
Il processo di untarring del file tgz è:
tar -xvzf /path/to/yourfile.tgz
Una volta che sei nel percorso in cui il file è stato decompresso, esegui:
./configure
make
make altinstall
E si spera che questo risolva il problema.