Установка Python на Linux
В этой заметке я покажу как собрать из исходников и установить Python на Linux. Я буду все действия производить на Ubuntu 20.04, но инструкция будет одинаково работать и на LinuxMint и Debian.
В моей Ubuntu по умолчанию установлен Python 3.8.10, я хочу установить более свежую версию, как же это сделать?
Подготовка
Обновляем список пакетов
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
Дальше на странице https://www.python.org/downloads/source/ нужно сохранить ссылку на исходники нужной вам версии Python, например я возьму последнюю на данный момент версию Python 3.10.1
С помощью wget скачиваем исходники в домашнюю директорию
sudo wget https://www.python.org/ftp/python/3.10.1/Python-3.10.1.tgz
Далее разархивируем скаченный архив:
sudo tar -xf Python-3.10.1.tgz
Сборка Python в Linux из исходников
Перейдем в директорию с исходным кодом Python
cd Python-3.10.1
Далее нужно запустить скрипт конфигурации, он выполнит проверки на необходимые для сборки Python
./configure --enable-optimizations
Мы запускаем скрипт с параметром —enable-optimizations, он оптимизирует собираемый двоичный файл Python (правда это замедлит процесс сборки, https://docs.python.org/3/using/configure.html).
После выполнения скрипта нам остается запустить сам процесс сборки:
make -j 4
Параметром -j 4
я указал количество ядер процессора, узнать эту цифру можно командой nproc
.
Установка Python в Linux
Процесс сборки довольно длительная операция, после того, как она завершиться можно установить Python одной из двух команд:
sudo make altinstall
Эта команда устанавливает наш Python рядом с предыдущими версиями, в будущем вы сможете выбирать какой версией пользоваться.
sudo make install
Эта команда установит новую версию Python поверх старых.
В данный момент я воспользовался первой командой altinstall .
Дожидаемся окончания процесса установки и проверяем:
python3.10 -V
В ответ получаем версию Python 3.10.1
Предыдущая версия python, установленная в Убунту 20.04 по умолчанию так же доступна, можно убедится в этом вызвав команду:
python3 -V
В ответ получаем версию Python 3.8.10
Теперь можно удалить архив с исходниками и папку куда мы их разархивировали:
sudo rm -Rf Python-3.10.1 Python-3.10.1.tgz
Еще раз повторюсь, что инструкция выше по сборке Python из исходников в Ubuntu подойдет и для установки Python в LinuxMint и Debian. В репозиториях этих дистрибутивов уже есть собранные Python, но не всегда самой свежей версии.