web-dev-qa-db-fra.com

Comment installer une version différente de Python avec apt-get?

Comment puis-je installer une version différente de Python en utilisant apt-get?

Bien entendu, je me rends compte que je peux l’installer à l’aide de la source tar, mais je préférerais ne pas l’installer à partir de la source et utiliser plutôt le gestionnaire de paquets, car c’est pour cela qu’il est. Il est certain que quelque chose de réputé construit des fichiers .deb pour les dernières Python versions (pourquoi python.org ne me dépasse pas) que je peux référencer.

Que dois-je faire pour les référencer et quels problèmes pourrait-il créer lors de la mise à niveau vers la version suivante?

S'il n'y a pas d'autre moyen que de compiler à partir des sources, y a-t-il un (pseudo) package que je puisse installer qui fournisse toutes les dépendances nécessaires sans devoir rechercher et installer chacun individuellement? Pour que je ne reçoive pas:

The necessary bits to build these optional modules were not found:
_bz2                  _curses               _curses_panel      
_dbm                  _gdbm                 _lzma              
_sqlite3              _ssl                  _tkinter           
readline              zlib  
114
harry

Felix Krull exécute une PPA offrant essentiellement toute version de Python (sérieusement, il existe une version 2.3.7 pour Vivid ...). pour de nombreuses versions d'Ubuntu sur https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa .

Faites comme d'habitude:

Sudo add-apt-repository ppa:deadsnakes/ppa
Sudo apt-get update
Sudo apt-get install python3.5

Il ne remplacera pas votre python3.4 existant qui est toujours lié symboliquement par python3.

NE PAS changer le lien symbolique! Apparemment, de nombreuses fonctions système ne fonctionnent pas correctement avec python3.5.

J'ai essayé cela et par la suite je n'ai pas pu ouvrir un terminal, un programme de mise à jour logicielle, ...

cd /usr/bin
Sudo rm python3

La mise à niveau vers Wily adaptera le méta-package python3 pour qu'il pointe vers python3.5. Je ne m'attends pas à une casse, mais à ce stade, le référentiel étranger n'est plus nécessaire. Donc, pour être vraiment en sécurité, vous pouvez purger le PPA avant de procéder à la mise à niveau.

157
Nephente

Ce lien Youtube m'a aidé à l'installer.

Les étapes sont les suivantes:

Sudo apt-get install libssl-dev openssl
wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
tar xzvf Python-3.5.0.tgz
cd Python-3.5.0
./configure
make
Sudo make install

Pour vérifier si python est installé, tapez python3.5 else:

Sudo ln -fs /opt/Python-3.5.0/Python /usr/bin/python3.5
35

Il suffit de suivre ces étapes (testées):

Étape 1 - Installation des packages requis

Utilisez la commande suivante pour installer les éléments prérequis pour Python avant de l'installer.

Sudo apt-get install build-essential checkinstall
Sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

Étape 2 - Téléchargez Python 3.5.2

Téléchargez Python à l'aide de la commande suivante du site officiel python. Vous pouvez également télécharger la dernière version à la place de celle spécifiée ci-dessous.

cd /usr/src
Sudo wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

Maintenant, extrayez le paquet téléchargé.

Sudo tar xzf Python-3.5.2.tgz

Étape 3 - Compiler Python Source

Utilisez le jeu de commandes ci-dessous pour compiler le code source python sur votre système à l'aide de altinstall.

cd Python-3.5.2
Sudo ./configure
Sudo make altinstall

make altinstall empêche de remplacer le fichier binaire python par défaut /usr/bin/python.

Étape 4 - Vérifiez la version Python

Vérifiez la dernière version installée de python à l'aide de la commande ci-dessous.

$ python3.5 -V

Python 3.5.2

Source .

11
Bilal

Autant que je sache, au moins dans un conteneur Docker, on peut définitivement apt-get python 3.

J'ai d'abord rencontré un conteneur Ubuntu avec conteneur:

docker run -it --rm ubuntu:latest bash

puis, pour une raison quelconque, il fallait mettre à jour certains éléments d'ubuntu, ce que j'ai fait (à l'intérieur du conteneur):

apt-get update && apt-get install -y build-essential git libjpeg-dev

et puis j'ai simplement installé python3 et il semble qu'il ait automatiquement obtenu python 3.5:

apt-get install python3
apt-get install python3-pip

et pour tester si pip fonctionne, nous pouvons télécharger quelque chose:

pip3 install tensorflow

tout semble bien fonctionner pour moi.

Remarque importante: il semble que si vous avez déjà installé python 3.4, le apt-get install python3 ne fonctionne pas car il indique que vous l'avez déjà. Il semble que cela soit l’un de mes problèmes car je partais d’une image de menu fixe de tensorflow (en particulier de gcr.io/tensorflow/tensorflow:latest-devel-py3) et d’un élément de cette image (je suppose qu’il existe déjà python 3.4, mais il se peut que ce soit différent). ne m'a pas permis de mettre à jour mon python pour obtenir python 3.5.


crédit: j'ai découvert cela en posant la question suivante: https://stackoverflow.com/questions/42122826/can-one-use-python-3-5-in-a-docker-container-based-out -de-the-tensorflow-docker


Note: on peut aussi simplement installer Anaconda. Pour un exemple de docker, on peut faire:

docker pull continuumio/anaconda3
docker run -i -t continuumio/anaconda3 /bin/bash

depuis leur site officiel: https://hub.docker.com/r/continuumio/anaconda3/

Cette solution installe python 3.6, mais je suis sûr que si vous y regardez de plus près, vous pouvez obtenir python 3.5 si c'est ce que vous voulez.

Remarque: vous devriez probablement utiliser un environnement virtuel comme env virtuel ou conda/anaconda, sauf si vous utilisez docker de toute façon. Je voulais juste rappeler aux gens.

6
Charlie Parker

Un certain nombre de distributions python plus récentes disponibles à installer via apt-get sont listées dans paquets Ubunt

à titre d'exemple, les versions suivantes sont actuellement disponibles:

python2.7

python3.2

python3.4

python3.5

python3.6

La disponibilité varie avec la version Ubuntu dans une certaine mesure. Par exemple, 3.5 est disponible pour Xenial, Yakkety et Zesty et 3.6 pour Yakkety et Zesty, mais vous devez activer le référentiel Univers s'il n'est pas activé pour les obtenir via apt-get. Pour vérifier la disponibilité de votre version d'Ubuntu, consultez les liens ci-dessus.

Un coup d'œil rapide indique que cette réponse est également valable, car PPA en a 3,6 même pour Trusty.

2
Elder Geek

J'envisagerais d'utiliser des environnements virtuels au lieu d'installer les versions de python via apt-get.

L’utilisation d’environnements virtuels voir ici est une bonne pratique de développement avec Python. Ils vous permettent d'isoler votre environnement python des versions python installées sur le système.

De plus, vous n'avez pas besoin d'accéder à Sudo pour installer une bibliothèque (via pip, etc.).

0
devrimbaris

Conda est activement mis à jour et vous permet d’installer plusieurs versions de python dans des environnements gérés sans l’ennui de tout configurer vous-même. Les problèmes de cheminement des extensions binaires ont peut-être été résolus dans de nombreuses chaînes de dépendance/pip gérées par anaconda qu’il utilise.

0
RobotHumans