Предыстория - для пакета dadata (который планировал использовать для одного проекта) требуется Python 3.7, т.к. это минимально поддерживаемая версия. Но в моей системе Linux Mint 18.3 стоит Python 3.5 и это последняя доступная в репозитариях версия, а каких-то более вменяемых репозитариев найти не удалось, поэтому будем ставить "вручную" из исходников.
Скачиваем Python и устанавливаем как альтернативную версию с использованием make altinstall
## Скачиваем Python 3.7.9
mkdir -p /tmp/Python && cd "$_"
wget -c https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tar.xz
## Распаковываем, компилируем и т.п.
tar xf Python-3.7.9.tar.xz
cd Python-3.7.9/
./configure ; make && sudo make altinstall
## Проверяем:
python3.7 -V
# Python 3.7.9
Это может занять какое-то время. После установки Python будет скорее всего в директории /usr/local/bin/
## Смотрим куда он встал:
whereis python3 | sed 's/ /\n/g' | grep 3.7
#/usr/local/bin/python3.7m
#/usr/local/bin/python3.7
#/usr/local/bin/python3.7m-config
#/usr/local/lib/python3.7
Настраиваем альтернативные версии Python3, чтобы их можно было менять, но пока оставляем по умолчанию версию 3.5, т.к. если сменить то не будут выполняться некоторые системные скрипты, например blueman-manager и т.п.
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 2
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.7 1
Можно использовать команду update-alternatives —list, что бы посмотреть все альтернативные версии
## Список установленных альтренативных версий Python
update-alternatives --list python3
По необходимости можно переключаться между установленными версиями Python
## Переключение между версиями
sudo update-alternatives --config python3
После выполнения команды выведется список всех доступных версий Python в системе, как в приведенном ниже примере. Необходимо выбрать версию, которая будет использоваться.
Выбор Путь Приор Состояние
------------------------------------------------------------
* 0 /usr/bin/python3.5 2 автоматический режим
1 /usr/bin/python3.5 2 ручной режим
2 /usr/local/bin/python3.7 1 ручной режим
Press to keep the current choice[*], or type selection number:
Для переключения версии Python необходимо ввести номер строки с нужной версией Python, указанный в колонке "Выбор"
Продолжим.
Обновляем pip и поставим пакет virtualenv для создания виртуального окружения
## Обновляем pip
python3.7 -m pip install --upgrade pip
# Ставим пакет virtualenv для создания виртуального окружения
python3.7 -m pip install virtualenv
В целом, все!
Последний штрих, создадим папку для нашего проекта, виртуальное окружение и установим в нем требуемые нам пакеты
mkdir -p ~/Projects/fias && cd "$_"
## Создаем виртуальное окружение
python3.7 -m venv venv
## активируем виртуальное окружение
source venv/bin/activate
pip install cx_oracle
pip install dadata
PS: Кстати, в виртуальном окружении python3.7 будет доступен как python и python3, см:
ls -l venv/bin/python*
lrwxrwxrwx 1 sergey sergey 9 июл 30 08:13 venv/bin/python -> python3.7
lrwxrwxrwx 1 sergey sergey 9 июл 30 08:13 venv/bin/python3 -> python3.7
lrwxrwxrwx 1 sergey sergey 24 июл 30 08:13 venv/bin/python3.7 -> /usr/local/bin/python3.7
Комментариев нет:
Отправить комментарий