Как установить Python 3.6 с помощью apt-get?
Я пробовал нормальный способ, sudo apt-get install python3.6
, но... ну... это не сработало.
Итак, как бы я пошел по этому поводу? (Я бы предпочел не создавать его самостоятельно)
Я использую Ubuntu 16.04.
8 ответов
Ubuntu 14.04 (Trusty), 16.04 (Xenial)
Если вы используете Ubuntu 14.04 или 16.04, вы можете использовать PPA deadsnakes Феликса Крулла по адресу https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa:
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.6
Кроме того, вы можете использовать PPA J Fernyhough по адресу https://launchpad.net/~jonathonf/+archive/ubuntu/python-3.6:
sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt-get update
sudo apt-get install python3.6
Ubuntu 16.10, 17.04
Если вы используете Ubuntu 16.10 или 17.04, то Python 3.6 находится в репозитории юниверсов, поэтому вы можете просто запустить:
sudo apt-get update
sudo apt-get install python3.6
После установки для Ubuntu 14.04, 16.04, 16.10 и 17.04
Чтобы вызвать интерпретатор Python 3.6, запустите python3.6
,
Ubuntu 17.10 и 18.04 (Bionic)
Ubuntu 17.10 и 18.04 уже поставляются с Python 3.6 по умолчанию. Просто беги python3
чтобы вызвать это.
Я бы порекомендовал pyenv, чтобы решить ваши проблемы. Он не использует Aptitude и включает в себя "создание его самостоятельно", но он полностью автоматизирован. Вы можете собрать и установить новую (или старую) версию Python, просто сказав pyenv install 3.6.0
, Все работает как ваш пользователь, так что вам не нужно беспокоиться о том, чтобы испортить Python, используемый самой Ubuntu.
Кроме того, ответ на следующий вопрос "Как установить Python 3.7 с помощью apt-get?" имеет тот же ответ: pyenv update; pyenv install 3.7.0
, Как правило, он будет работать в тот же день после выпуска, потому что вам не нужно ждать, пока кто-то еще упакует его для Ubuntu. Посмотреть все версии, которые вы можете установить с pyenv install --list
Установить pyenv
Установите инструменты и заголовки, необходимые для сборки CPythons (экзотические Python, такие как PyPy или Jython, могут иметь другие зависимости). Git используется pyenv, плюс он также позволяет собирать / устанавливать исходные ветки, так что вы можете установить любую версию 3.8 прямо сейчас, то есть основную ветку CPython, свежую из GitHub:
sudo apt-get install -y git sudo apt-get install -y build-essential libbz2-dev libssl-dev libreadline-dev \ libffi-dev libsqlite3-dev tk-dev # optional scientific package headers (for Numpy, Matplotlib, SciPy, etc.) sudo apt-get install -y libpng-dev libfreetype6-dev
Запустите скрипт установщика (устанавливает pyenv и некоторые очень полезные плагины pyenv от оригинального автора; подробнее здесь)
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
Добавьте строки инициализации к вашему
~/.profile
или же~/.bashrc
(это упоминается в конце сценария установки):export PATH="~/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
Перезапустите вашу оболочку (закройте и откройте или
exec $SHELL
) или перезагрузите скрипт профиля. (например,source ~/.bashrc
)
Готово!
Настройка среды
Не трогать системный Python (как правило, плохая идея; службы уровня ОС могут полагаться на некоторые конкретные версии библиотек и т. Д.) Создать собственную среду, это просто! Даже лучше нет sudo
, для этого или pip
устанавливает!
Установите предпочитаемую версию Python (она загрузит исходный код и соберет его для вашего пользователя, ввод не требуется)
pyenv install 3.6.0
Сделайте это виртуальным, чтобы вы могли сделать других позже, если хотите
pyenv virtualenv 3.6.0 general
Сделайте это глобально активным (для вашего пользователя)
pyenv global general
Делай что хочешь с Python / pip и т. Д. Он твой.
Если вы хотите очистить свои библиотеки позже, вы можете удалить virtualenv (pyenv uninstall general
) или сделать новый (pyenv virtualenv 3.6.0 other_proj
). Вы также можете иметь активную среду для каждого каталога: pyenv local other_proj
упадет .python-version
файл в вашу текущую папку, и каждый раз, когда вы вызываете Python или утилиты Python, установленные из него или из него, они будут заблокированы pyenv.
Поиск проблемы
bash: pyenv: command not found
,fish: Unknown command 'pyenv'
- Проверьте свои
$PATH
должна быть одна запись, которая заканчивается чем-то вроде.pyenv/bin
, Если он отсутствует, убедитесь, что вы выполнили #3 И # 4 (перезапустите вашу оболочку) в разделе Установка pyenv выше.
- Проверьте свои
pyenv: no such command 'virtualenv'
- Если вы не использовали скрипт установщика, скорее всего, вы установили только корневой пакет pyenv. Смотрите pyenv-virtualenv для инструкций по добавлению плагина.
- Если вы использовали установочный скрипт, проверьте, отображается ли он с
pyenv commands
,
Это зависит от того, какую версию Ubuntu вы используете.
Ubuntu 16.10 и Ubuntu 17.04
Поскольку Python 3.6 установлен в хранилище юниверсов Ubuntu 16.10 и Ubuntu 17.04, вы можете напрямую установить Python 3.6 из хранилища. Просто используйте команды ниже:
sudo apt update
sudo apt install python3.6
Ubuntu 16.04
Есть два способа установить Python3.6 на Ubuntu 16.04
- Скомпилируйте и установите Python 3.6 в Ubuntu 16.04
- Установите python 3.6 на Ubuntu 16.04 из PPA
1. Скомпилируйте и установите Python 3.6 в Ubuntu 16.04.
Установите необходимые зависимости, загрузите исходный код python 3.6, соберите среду и установите
sudo apt install build-essential checkinstall
sudo apt install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
tar xvf Python-3.6.0.tar.xz
cd Python-3.6.0/
./configure
sudo make altinstall
2. Установите python 3.6 на Ubuntu 16.04 из PPA
Вы можете установить Python 3.6 из PPA, используя команды ниже
sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt update
sudo apt install python3.6
Если Python 3.6 установлен правильно, вы можете вызвать интерпретатор python, запустив python3.6
в терминале.
Надеюсь, это поможет. Если у вас есть какие-либо проблемы, вы можете проверить это сообщение в блоге здесь.
Если вы не можете найти какие-либо рабочие репозитории, вы можете попробовать скомпилировать себя из исходного кода. Вы можете найти исходный код на странице загрузки. Затем скачайте и распакуйте архив; например для Python-3.6.1.tgz
,
Процесс распаковки файла tgz:
tar -xvzf /path/to/yourfile.tgz
Когда вы найдете путь к файлу, к которому был распакован файл, запустите:
./configure
make
make altinstall
И, надеюсь, это должно решить проблему для вас.
Лучше всего перейти на Ubuntu 20.04, а затем установить его из deadsnakes
PPA:
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt install python3.6
В противном случае можно попробовать придумать, как установить
deadsnakes
PPA в версии Ubuntu, которую они не поддерживают. Они поддерживают только версии Ubuntu с долгосрочной поддержкой (LTS), а 19.04 и 19.10 - нет (но Ubuntu 20.04 поддерживает). Могу поклясться, что видел ветку о людях, делающих это где-то на Github https://github.com/deadsnakes/issues/issues?q=is%3Aissue+is%3Aclosed, но сейчас я не могу ее найти.
Также ознакомьтесь с этим ответом о загрузке deb-пакета https://stackoverflow.com/a/55858634/3064538
Но если вы не можете сделать ничего из этого, то последнее средство - скомпилировать его из исходников, что вы делаете, сначала устанавливая компилятор C.
sudo apt install gcc
затем перейдите на https://www.python.org/downloads/ и найдите последнюю микро-версию 3.6 ( 3.6.10, когда я пишу это) и скомпилируйте ее из источника, например
wget -P ~/Downloads https://www.python.org/ftp/python/3.6.10/Python-3.6.10.tar.xz
cd ~/Downloads
tar -xJf Python-3.6.10.tar.xz
cd Python-3.6.10
а потом
./configure
make
make test
sudo make altinstall
Последняя команда использует
altinstall
вместо того
install
так что 3.6 установлен как
python3.6
а также
pip3.6
. Если вы измените последнюю команду на
sudo make install
(без
alt
) то установит его как
python3
, который перезапишет версию Python 3.7 (и pip), которую вы установили сейчас.
Обновление оставлено в качестве упражнения для читателя.
Для Ubuntu 15.10 я успешно установил его, используя этот метод:
sudo add-apt-repository ppa:jonathonf/python-3.6
Но я отредактировал этот файл:
sudo vi /etc/apt/sources.list.d/jonathonf-ubuntu-python-3_6-wily.list
И я изменил хитрый на доверчивый, а затем:
sudo apt-get update
sudo apt-get install python3.6
Возможно, предположить, что Конда не плохая идея. Я думаю, что это по крайней мере проще, чем использовать pyenv. Но, возможно, все-таки это зависит от того, что вы собираетесь делать с Python, потому что я думаю, что с Conda у вас могут возникнуть дополнительные пакеты.
РЕДАКТИРОВАТЬ: вероятно, стоит упомянуть, что после установки версии Python по умолчанию Conda, вы можете установить нужную версию, здесь 3.6, используя conda
лайк
conda install python==3.6
Во-первых, следуйте другим ответам, чтобы установить Python 3.6 или 3.7. Затем, если вы хотите установить пакеты PyPi, такие как OpenEXR через pip
Вы можете получить некоторые ошибки. Некоторые из них (например, для пакета OpenEXR PyPi) могут быть решены путем установки пакета разработки Python для только что установленного Python. Это можно сделать, используя следующие:
sudo apt-get install python3.6-dev
или же
sudo apt-get install python3.7-dev