Чтобы обновить Python с версии 3.8 до 3.11 в подсистеме Ubuntu Windows для Linux (WSL), вы можете попробовать следующие методы:
Метод 1: использование PPA DeadSnakes
- Обновите список пакетов вашей системы, выполнив команду:
sudo apt update
. - Установите пакет Software-Properties-Common, выполнив:
sudo apt install Software-properties-common
. - Добавьте PPA Deadsnakes в свою систему, выполнив:
sudo add-apt-repository ppa:deadsnakes/ppa
. - Снова обновите список пакетов:
sudo apt update
. - Установите Python 3.11, выполнив:
sudo apt install python3.11
.
Метод 2: компиляция из исходного кода
- Установите необходимые зависимости сборки, выполнив:
sudo apt update && sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3- dev wget libbz2-dev
. - Загрузите исходный код Python 3.11, запустив:
wget https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tgz
. - Извлеките загруженный архив:
tar -xf Python-3.11.0.tgz
. - Перейдите в извлеченный каталог:
cd Python-3.11.0
. - Настройте сборку и компиляцию Python, выполнив:
./configure --enable-optimizations && make -j <количество ядер>
(замените<количество ядер>
с количеством ядер ЦП в вашей системе для параллельной компиляции). - Установите Python, выполнив:
sudo make altinstall
.
Метод 3: использование pyenv
- Установите pyenv, следуя инструкциям по адресу: https://github.com/pyenv/pyenv-installer .
- Установите необходимые зависимости сборки, выполнив:
sudo apt update && sudo apt install build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget cur llvm libncurses5-dev libncursesw5-dev xz- utils tk-dev libffi-dev liblzma-dev python-openssl git
. - Установите Python 3.11 с помощью pyenv, выполнив:
pyenv install 3.11.0
.