Prérequis

Il faut mettre à jours Raspbian :
sudo apt-get update

Et installer les dépendances nécessaires :

sudo apt-get install -y build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libffi-dev tar wget

Compiler Python 3.9.1

Téléchargez les sources :
wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
Décompressez l’archive :
tar zxf Python-3.9.1.tgz
cd Python-3.9.1

Compilez les sources :

sudo ./configure --enable-optimizations
sudo make -j 4

Installez la version fraichement compilée :

sudo make altinstall

Veuillez laisser les lieux…

cd ..
rm -r Python-3.9.1
rm Python-3.9.1.tar.xz

Faire de Python3.9 la version par défaut

/usr/bin/python3

Pour mettre en place 2 alternative à l’alias python3, tapez :

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 0
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.9 1

Étant donné que nous avons mis une priorité plus importante pour la version 3.9, cela sera la version utilisée lorsque python3 sera invoqué.

/usr/bin/python

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 0
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
Lorsque python sera invoqué ce sera python3, donc python3.9, qui sera appelé.

pip

Il faut maintenant pointer lsb_release vers la version de python 3.9 pour que pip puisse fonctionner.
sudo ln -s /usr/share/pyshared/lsb_release.py /usr/local/lib/python3.9/site-packages/lsb_release.py
 

Cet article a 4 commentaires

  1. Joris

    Excellent tuto, un grand merci !

  2. Danonino

    Super tuto merci ! Par contre je crois que tu as inversé les arguments de la dernière ligne : `sudo ln -s /usr/local/lib/python3.9/site-packages/lsb_release.py /usr/share/pyshared/lsb_release.py`

    1. angorange-admin

      Bonjour Danonino. Merci pour ton commentaire. Normalement c’est correct. Tu as eu des problèmes ?

Laisser un commentaire