web-dev-qa-db-fra.com

Meilleure façon d'exécuter python 3.7 sur Ubuntu 16.04 fourni avec python 3.5

Je voudrais éviter les rétroportages, ils semblent toujours gâcher mes paquets.

Je pensais donc que des outils comme conda/virtualenv/peut-être même que docker peuvent aider. Quelle est la façon la plus simple/la plus propre de travailler avec python 3.7 sur mon système?

20
benji

Cela devrait vous permettre d'être opérationnel avec Python 3.7 sur Ubuntu 16.04

# Install requirements
Sudo apt-get install -y build-essential \
checkinstall \
libreadline-gplv2-dev \
libncursesw5-dev \
libssl-dev \
libsqlite3-dev \
tk-dev \
libgdbm-dev \
libc6-dev \
libbz2-dev \
zlib1g-dev \
openssl \
libffi-dev \
python3-dev \
python3-setuptools \
wget

# Prepare to build
mkdir /tmp/Python37
cd /tmp/Python37

# Pull down Python 3.7, build, and install
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
tar xvf Python-3.7.0.tar.xz
cd /tmp/Python37/Python-3.7.0
./configure
Sudo make altinstall

Ensuite, vous appelleriez simplement Python comme ceci:

python3.7 ./yourScript.py

Voici une capture d'écran de plusieurs versions de Python coexistant dans un conteneur Docker et comment les distinguer:

How to call Python different versions

Pip devrait également avoir été installé avec cette installation. Pour installer des packages, utilisez ce format:

pip3.7 --version
37
Sn3akyP3t3

Je ne recommanderais pas de tripoter manuellement les installations et les chemins du code source. tilisez pyenv et épargnez-vous la peine.

Tout ce que tu dois faire est:

  • Exécutez le programme d'installation pyenv
  • Suivez les instructions
  • Installez les versions Python dont vous avez besoin
  • Choisissez la version Python que vous souhaitez utiliser pour un répertoire donné ou globalement

Par exemple, pour installer 3.7, vérifiez les versions disponibles:

pyenv install -l | grep 3.7

Exécutez ensuite:

pyenv install 3.7.1

Maintenant, vous pouvez choisir votre version Python version:

pyenv global 3.7.1

Cela fait basculer votre python vers le point 3.7.1. Si vous voulez le python système, exécutez:

pyenv global system

Pour vérifier quelles versions Python sont disponibles, exécutez pyenv versions.

4
slhck

Vous pouvez télécharger le code source depuis www.python.org, le compiler et le construire à partir du source, puis soit:

1) Ajoutez le chemin d'accès aux exécutables python à PATH et aux bibliothèques à LD_LIBRARY_PATH.

2) Faites ce que j'ai fait et compilez-le et construisez-le à partir de la source et créez des liens symboliques vers les exécutables dans /usr/bin. Vous pouvez l'appeler python37 pour le distinguer du python 3.5 qui est déjà installé.

La première méthode l'utilisera par défaut dans votre environnement alors qu'avec la seconde, vous devrez la spécifier avec la commande que vous avez utilisée pour le lien symbolique. Vous souhaiterez peut-être d'abord utiliser la deuxième méthode avant d'en faire la valeur par défaut comme python 3.7 est toujours en développement.

0
Nasir Riley