Установка Python 3.11/3.10 из исходников в Debian 11 Bullseye

Содержание статьи:

Я ниже рассмотрю установку из исходников Python 3.11. В случае если необходима версия 3.10, то действия будут аналогичные приведенным ниже.

Все действия ниже будут выполняться от root.

Установка

# Устанавливаем необходимые пакеты зависимостей.

apt-get install build-essential pkg-config libreadline-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev -y

# Скачиваем последнюю версию исходников Python и распаковываем их.

cd /opt

wget https://www.python.org/ftp/python/3.11.4/Python-3.11.4.tar.xz
tar -Jxf Python-3.11.4.tar.xz

cd Python-3.11.4
ИНФОРМАЦИЯ. Официальная страница загрузок Python — https://www.python.org/downloads/source/

# Конфигурируем, собираем и устанавливаем пакет — Python

./configure --prefix=/usr --enable-optimizations
make
make altinstall
cd ..

 

# Для проверки успешной установки Python выполним команды, как результат должны вернутся версии установленных пакетов.

python3.11 --version
python3.11 -m pip --version

 

# Сделаем Python 3.11 используемый по-умолчанию.

update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 100
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 110
ИНФОРМАЦИЯ. Для возможности переключения между версиями Python, первой строкой с меньшим весом указываем версию Python 3.9 входящую в дистрибутив Debian 11, а второй строкой с большим весом указываем установленную версию Python 3.11.

Для переключения между версиями, выполняем команду и выбираем какую использовать по-умолчанию:

update-alternatives --config python3
There are 2 choices for the alternative python3 (providing /usr/bin/python3).

  Selection    Path                 Priority   Status
------------------------------------------------------------
* 0            /usr/bin/python3.11  110       auto mode
  1            /usr/bin/python3.9   100       manual mode
  2            /usr/bin/python3.11  110       manual mode

Press <enter> to keep the current choice[*], or type selection number:

 

Удаление

Для удаление Python собранного из исходников, то необходимо перейти в каталог с исходниками в котором выпонялась сборка и компиляция пакета и выполнить команду:

make uninstall

В случае если исходный каталог был удален, то можно вручную удалить файлы относящиеся к установленной версии:

cd /usr/local/bin && rm -f rm -f 2to3-3.11 idle3.11 pip3.11 pydoc3.11 python3.11 python3.11-config

 

Так же удалим из подсистемы update-alternatives символическую ссылку на удаленный пакет Python.

Выведем информацию о группе ссылок python3, командой:

update-alternatives --query python3
Name: python3
Link: /usr/bin/python3
Status: auto
Best: /usr/bin/python3.11
Value: /usr/bin/python3.11

Alternative: /usr/bin/python3.9
Priority: 100

Alternative: /usr/bin/python3.1
Priority: 110

Удалим из группы ссылок python3 запись о пакете python3.11, командой:

update-alternatives --remove python3 /usr/bin/python3.11
 

ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОБЛАГОДАРИ АВТОРА

Оставьте комментарий

девятнадцать + 14 =