Django/Python Upgrade (venv) von 3.10 auf 3.11

09.02.2024 | Linux | Python

Anleitung für Linuxmint 21.3

python3.11 -m venv --upgrade venv

erzeugt leider KEIN Upgrade, sondern legt unter venv eine neues lib-Directory für python3.11 an. Außer python und pip ist da nichts drin. 

Hier muß man alles neu installieren, vorher requirements per freeze exportieren:

pip install -r requirements.txt

 

 Vorbereitung 

apt install apache2-dev
sudo add-apt-repository ppa:deadsnakes/ppa
apt install python3.11-full python3.11-dev

Quellcode für mod_wsgi gibts hier: https://github.com/GrahamDumpleton/mod_wsgi/releases

 

auspacken, konfigurieren, kompilieren, installieren

./configure --with-apxs=$(which apxs) --with-python=/usr/bin/python3.11
make
sudo make install

Jetzt sollte ein aktualsiertes mod_wsgi.so hier liegen:

/usr/lib/apache2/modules/mod_wsgi.so

Apache neugestartet?

Nach dem Upgrade siehts so aus:

Apache/2.4.52 (Ubuntu) mod_fcgid/2.3.9 mod_wsgi/5.0.0 Python/3.11 configured

 

Python 3.11 zu default machen

# letzte Ziffer ist die Priority ---------------------------------------------v
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.10 0
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.11 1
sudo update-alternatives --list python
sudo update-alternatives --config python

Jetzt ist 3.11 die default-Version:


$ python -V

Python 3.11.7

 

Analyse

Entwurf

Development

Launch