Назад | Перейти на главную страницу

Лучший способ запустить python 3.7 на Ubuntu 16.04, который поставляется с python 3.5

Я бы хотел избежать бэкпортов, они всегда портят мои пакеты.

Итак, я подумал, что такие инструменты, как conda / virtualenv /, возможно, даже докер могут помочь. Какой самый простой / самый чистый способ работы с python 3.7 в моей системе?

Это должно помочь вам начать работу с Python 3.7 на Ubuntu 16.04.

# Install requirements
sudo apt-get install -y build-essential \
checkinstall \
libreadline-gplv2-dev \
libncursesw5-dev \
libssl-dev \
libsqlite3-dev \
tk-dev \
libgdbm-dev \
libc6-dev \
libbz2-dev \
zlib1g-dev \
openssl \
libffi-dev \
python3-dev \
python3-setuptools \
wget

# Prepare to build
mkdir /tmp/Python37
cd /tmp/Python37

# Pull down Python 3.7, build, and install
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
tar xvf Python-3.7.0.tar.xz
cd /tmp/Python37/Python-3.7.0
./configure
sudo make altinstall

Тогда вы просто вызовете Python так:

python3.7 ./yourScript.py

Это снимок экрана нескольких версий Python, сосуществующих в контейнере докеров, и то, как их можно отличить:

Pip также должен был быть установлен с этой установкой. Для установки пакетов используйте этот формат:

pip3.7 --version

Я бы не рекомендовал вручную возиться с установками и путями исходного кода. Использовать pyenv и избавь себя от неприятностей.

Все, что вам нужно сделать, это:

  • Запустить pyenv установщик
  • Следуй инструкциям
  • Установите нужные версии Python
  • Выберите, какую версию Python вы хотите использовать для данного каталога или глобально

Например, чтобы установить 3.7, проверьте, какие версии доступны:

pyenv install -l | grep 3.7

Затем запустите:

pyenv install 3.7.1

Теперь вы можете выбрать свою версию Python:

pyenv global 3.7.1

Это переключает ваш python указать на 3.7.1. Если вам нужен системный питон, запустите:

pyenv global system

Чтобы проверить, какие версии Python доступны, запустите pyenv versions.

Вы можете загрузить исходный код с www.python.org, скомпилировать и собрать его из исходного кода, а затем либо:

1) Добавьте путь к исполняемым файлам python к PATH и библиотеки LD_LIBRARY_PATH.

2) Сделайте то, что я сделал, скомпилируйте и соберите его из источника и сделайте символические ссылки на исполняемые файлы в /usr/bin. Вы можете назвать это python37 отличить его от python 3.5 который уже установлен.

Первый метод будет использовать его в вашей среде по умолчанию, тогда как второй метод будет указывать его с помощью команды, которую вы использовали для символической ссылки. Вы можете сначала использовать второй метод, прежде чем сделать его по умолчанию как python 3.7 все еще в разработке.