Python-update: различия между версиями

Материал из WiKi - UserSide
Нет описания правки
Нет описания правки
 
Строка 9: Строка 9:
  sudo apt install -y python3-dev python3-pip python3-venv libffi-dev libssl-dev pkg-config
  sudo apt install -y python3-dev python3-pip python3-venv libffi-dev libssl-dev pkg-config


После того, как все установлено, зайдите на сайт https://www.python.org/downloads/source/ и скопируйте номер последней версии текущей ветки или предыдущей, если текущая ветка слишком свежая. Например, если последняя версия 3.12.1, то надежней все таки установить версию 3.11.10, т.к. сразу после выхода новой версии (3.12) есть вероятность того, что не все зависимые пакеты ее поддерживают.
После того, как все установлено, зайдите на сайт https://www.python.org/downloads/source/ и скопируйте номер последней версии текущей ветки или предыдущей, если текущая ветка слишком свежая. Например, если последняя версия 3.13.1, то надежней все таки установить версию 3.12.8, т.к. сразу после выхода новой версии (3.13) есть вероятность того, что не все зависимые пакеты ее поддерживают.


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


  PY_VER=3.11.10
  PY_VER=3.12.8


Далее приведены команды, которые вы просто выполняете по одной, одну за другой, чтобы контролировать процесс и в случае ошибки не выполнять остальные команды. Копируйте по одной строке и выполняйте:
Далее приведены команды, которые вы просто выполняете по одной, одну за другой, чтобы контролировать процесс и в случае ошибки не выполнять остальные команды. Копируйте по одной строке и выполняйте:
Строка 22: Строка 22:
  make -j $(nproc)
  make -j $(nproc)
  sudo -H make altinstall
  sudo -H make altinstall
  curl -sS https://bootstrap.pypa.io/get-pip.py | sudo -H python3.11
  curl -sS https://bootstrap.pypa.io/get-pip.py | sudo -H python3.12
  cd ..
  cd ..
  sudo rm -rf Python-${PY_VER} python.tgz
  sudo rm -rf Python-${PY_VER} python.tgz


После выполнения всех этих действий у вас в системе будет установлена дополнительно еще одна версия Python. В данном случае это Python 3.11 а также инструмент pip тоже с версией 3.11. Системная версия Python изменена не будет и мы не рекомендуем ее изменять, так как некоторые системные компоненты могут быть зависимы от нее.
После выполнения всех этих действий у вас в системе будет установлена дополнительно еще одна версия Python. В данном случае это Python 3.12 а также инструмент pip тоже с версией 3.12. Системная версия Python изменена не будет и мы не рекомендуем ее изменять, так как некоторые системные компоненты могут быть зависимы от нее.


Чтобы использовать именно эту версию python и pip, вам нужно указывать целиком имена файлов, которые вы запускаете. Например:
Чтобы использовать именно эту версию python и pip, вам нужно указывать целиком имена файлов, которые вы запускаете. Например:
  python3.11 --version
  python3.12 --version
  pip3.11 --version
  pip3.12 --version


Теперь, чтобы создать виртуальное окружение для какого-либо модуля либо поллера, вам нужно использовать следующий синтаксис:
Теперь, чтобы создать виртуальное окружение для какого-либо модуля либо поллера, вам нужно использовать следующий синтаксис:
  sudo python3.11 -m venv venv
  sudo python3.12 -m venv venv
  sudo venv/bin/pip install -U pip wheel
  sudo venv/bin/pip install -U pip wheel
  и т.д.
  и т.д.

Текущая версия от 09:00, 13 декабря 2024

en | ru

Если версия Python, установленная на вашей ОС, не поддерживается модулями или поллером, то необходимо установить дополнительно новую версию Python, удовлетворяющую всем требованиям.

Важно: Изменять системную версию Python на новую - не рекомендуется! Единственный правильный способ - это установить новую версию параллельно системной. Иначе могут перестать работать различные системные службы и утилиты, использующие Python.

Сначала убедитесь, что у вас установлены все необходимые глобальные пакеты в Python, которые необходимы глобально для запуска виртуального окружения, для сборки других зависимостей.

sudo apt install -y python3-dev python3-pip python3-venv libffi-dev libssl-dev pkg-config

После того, как все установлено, зайдите на сайт https://www.python.org/downloads/source/ и скопируйте номер последней версии текущей ветки или предыдущей, если текущая ветка слишком свежая. Например, если последняя версия 3.13.1, то надежней все таки установить версию 3.12.8, т.к. сразу после выхода новой версии (3.13) есть вероятность того, что не все зависимые пакеты ее поддерживают.

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

PY_VER=3.12.8

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

curl -o python.tgz "https://www.python.org/ftp/python/${PY_VER}/Python-${PY_VER}.tgz"
tar xzf python.tgz
cd Python-${PY_VER}
./configure --enable-optimizations
make -j $(nproc)
sudo -H make altinstall
curl -sS https://bootstrap.pypa.io/get-pip.py | sudo -H python3.12
cd ..
sudo rm -rf Python-${PY_VER} python.tgz

После выполнения всех этих действий у вас в системе будет установлена дополнительно еще одна версия Python. В данном случае это Python 3.12 а также инструмент pip тоже с версией 3.12. Системная версия Python изменена не будет и мы не рекомендуем ее изменять, так как некоторые системные компоненты могут быть зависимы от нее.

Чтобы использовать именно эту версию python и pip, вам нужно указывать целиком имена файлов, которые вы запускаете. Например:

python3.12 --version
pip3.12 --version

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

sudo python3.12 -m venv venv
sudo venv/bin/pip install -U pip wheel
и т.д.