Как установить 2 версии Python на Ubuntu 18.04? (Без использования виртуальной среды)

Я пытаюсь установить 2 версии Python:

1) 2.7.14

2) 3.7.2-1

Я создал их с помощью команд make:

wget https://www.python.org/ftp/python/2.7.14/Python-2.7.14.tgz

tar -xvf Python-2.7.14.tgz

cd Python-2.7.14

./configure --without-ensurepip --enable-optimizations

сделать

checkinstall -y

Когда я распаковываю один из них, он переопределяет второй установленный:

dpkg -i python_2.7.14-1_amd64.deb

dpkg: предупреждение: понижение версии Python с 3.7.2-1 до 2.7.14-1

(Чтение базы данных... На данный момент установлено 35940 файлов и каталогов.)

Подготовка к распаковке python_2.7.14-1_amd64.deb...

Распаковка python (2.7.14-1) поверх (3.7.2-1)...

Настройка питона (2.7.14-1)...

Как я могу заставить их обоих работать на моей Ubuntu?

**** ПРИМЕЧАНИЕ Я НЕ ХОЧУ ИСПОЛЬЗОВАТЬ ВИРТУАЛЬНУЮ СРЕДУ ****


person Danny Kaganovitch    schedule 12.03.2019    source источник
comment
Уже много раз отвечали stackoverflow.com /вопросы/2547554/   -  person riverfall    schedule 12.03.2019


Ответы (2)


Python уже установлен на вашем компьютере... Если вы хотите запустить другую версию, вам лучше настроить виртуальную среду

person Glori P.    schedule 12.03.2019
comment
Но у Ubuntu может быть 2 версии, насколько я знаю. У меня есть машина с 2.7 и 3.5 без виртуальной среды. - person Danny Kaganovitch; 12.03.2019
comment
да, у вас может быть версия python3 и версия python 2. В Ubuntu 18 python 2 не установлен по умолчанию. проверьте linuxconfig.org/ - person Glori P.; 12.03.2019
comment
ты пробовал sudo apt install python-minimal? с этим я установил Python 2.7.15, но вы хотели бы иметь 2.7.14, верно? - person Glori P.; 12.03.2019
comment
Кстати, я не рекомендую вам устанавливать другую версию Python, чем та, которая у вас установлена ​​по умолчанию. Ubuntu 18 поставляется с определенной версией Python 3, и вся система имеет эту зависимость. история меняется с использованием виртуальной среды - person Glori P.; 12.03.2019

Прежде всего, удалите любой другой пакет выше 2.7.

Опция 1:

Вы можете использовать исходный код python и «сделать altinstall»

Документы: https://docs.python.org/3/using/unix.html#building-python

Вариант 2:

Используя apt-get, я мог установить/обновить версии 2.7.15 и 3.7.1-1, используя среду Docker с этим Dockerfile:

FROM ubuntu:18.04

USER root

WORKDIR /app

RUN apt-get update && apt-get install python=2.7.15~rc1-1 python3.7=3.7.1-1~18.04 -y

Это означает, что если вы используете этот код:

apt-get update && apt-get install python python3.7 -y

Вероятно, это сработает.

person Fábio Correia    schedule 12.03.2019
comment
Не помогло, пробовал устанавливать: make, make altinstall, checkinstall -y и Python3 переопределял Python2 - person Danny Kaganovitch; 12.03.2019
comment
make install просто изменяет исполняемый файл, если python3 с make install вы должны использовать python3 в качестве исполняемого файла, а python 2 будет только python. Дальнейшие установки младших версий, таких как 3.6.2, будут Python3.6 и выше. - person Fábio Correia; 12.03.2019
comment
В Ubuntu обычно уже установлена ​​версия 2.7, и вы должны установить любую другую версию (если вы хотите, чтобы обе работали) из исходного кода, а не из пакетов deb. Мое последнее предположение заключается в том, что вы должны сделать тот, который у вас уже есть, нетронутым, а затем установить следующий из исходного кода и не использовать пакеты .deb. Я проверю с помощью Dockerfile, чтобы проверить, будет ли работать этот сценарий. - person Fábio Correia; 12.03.2019