Я хочу установить последний пакет Python для Ubuntu, загруженный с http://python.org/download/ .
Это правильный способ установки?
./configure
make
make install
Если нет, то как мне это сделать?
software-installation
python
mohammads
источник
источник
sudo apt-get install python-2.7 python-pip
sudo apt-get install python2.7
. Это не только проще, это единственный правильный ответ, поскольку это единственный способ, с помощью которого вы сможете поочередно устанавливать модули python через apt-get и их зависимости.Ответы:
Сначала установите некоторые зависимости:
Затем загрузите с помощью следующей команды:
Извлеките и перейдите в каталог:
Теперь установите с помощью команды, которую вы только что попробовали,
checkinstall
вместо этого используйте, чтобы упростить удаление при необходимости:Перейдите
version
на ту версию, которая вам нужна (version=2.7.1
илиversion=3.6.0
, например).источник
sudo make install
и неaltinstall
устанавливайте его как версию Python по умолчаниюCXX=g++ ./configure
if ./configure выдает предупреждение о том, что g ++ не найденsudo apt-get install python
, более сложный ответ - «как установить последний python», подразумевается «из исходного кода». У вас будет такая же проблема на любой ОС, если вы не устанавливаете предварительно скомпилированные двоичные файлы от стороннего производителя, что, опять же, опасно для любой ОС (и сильно различается в разных ОС). Также этот ответ с 2012 года; более свежие советы смотрите на сайте askubuntu.com/questions/101591/…Если у вас нет особого желания скомпилировать его самостоятельно, предпочтительным способом является использование PPA DeadSnakes для установки версий Python, которые не включены по умолчанию:
Другие версии, такие как
python2.4
илиpython3.6
, и т. Д. Также доступны.источник
really have a burning desire to compile it yourself
ppa
официально не одобрен, поэтому самый безопасный способ - это сборка из исходного кода. 2. это приведет к глобальному питону, который другие пользователи неsudo
смогут изменять или устанавливать, а не к локальному. 3. Несколько питонов могут быть установлены локально в разных местах путем сборки из источника.apt-get install python2.7
Это установить бинарный python2.7 вместо python ... некрасиво!Продолжая документировать это для последних выпусков Ubuntu 1 : для сервера Ubuntu 16.04.1 по умолчанию установлен Python версии 3.5, а Python 2.7 по умолчанию не установлен. При новой установке (обратите внимание, что нет даже
python
исполняемого файла):Примечание: прежде чем продолжить, вы, вероятно, захотите сделать это быстро
sudo apt-get update
,sudo apt-get upgrade
иsudo apt-get dist-upgrade
(пожалуйста, обратите внимание, что именно делают эти команды; я предполагаю, что здесь новая установка.)Установить Python 2.7 так же просто, как:
Первоначальный вывод установки Python 2.7 выглядит следующим образом:
После установки Python 2.7,
Но есть проблема, так как вы еще не можете установить модули PyPI через
pip
- например, если вы хотите ноутбук jupyter, или последний scipy или numpy (и т. Д.), Вы захотите установитьpip
и затемpip install
те, и все еще обращаетесь кapt-get
установить любые необходимые системные зависимости, такие как graphviz или основные системные библиотеки.Итак, установить pip так же просто, как
sudo apt-get install python-pip
:Вам понадобится как
python-pip
для Python 2.7, такpip
иpython3-pip
для Python 3pip
. Установка черезapt-get
обязательно установит необходимые зависимости; например, вот вывод для установки pip2:В результате этого происходит интересная вещь: теперь у вас есть «стандарт» (и рекомендуется PEP)
python2
иpython3
(которые являются просто символическими ссылками на python 2.7 и python 3.5):Вы также захотите
sudo apt-get install python3-pip
; перед установкой у вас есть:После установки
pip3
,Полученные версии:
И последнее, прежде чем вы сможете приступить к установке всех ваших любимых PyPI-модулей Python: вам, вероятно, придется обновить сам pip (как pip2, так и pip3, отдельно; кроме того, не имеет значения,
pip
вызывается ли он изpython
исполняемых файлов или изpip
исполняемые файлы, фактические обновления хранятся в/usr/lib
):Теперь вы можете запустить либо автономную
pip
версию, либо версию, входящую в комплектpython
(черезpython -m pip {command}
).[1] Исторический итог: в более ранней версии Ubuntu был только Python 2.6, поэтому были установлены все различные методы для установки Python 2.7+. Позже, после добавления Python 2.7 в общедоступные репозитории, у нас все еще была проблема с установкой новейшего Python 2.7 с последними исправлениями, что было (слишком) часто необходимо. Ситуация сегодня намного лучше / проще: текущие Python 2.7 и 3.5 (в основном только две версии платформы Python, которые заботятся о людях), которые сейчас находятся в общедоступных репозиториях, очень стабильны, поэтому теперь нам действительно нужно только беспокоиться об установке последней модули Python , а не последний Python . Так что теперь «проблема с последней версией» в Python частично перешла из репозиториев ОС
apt
и в PyPI &pip
.)источник
$PATH
. Env varPATH
- это длинный список каталогов с буквально тысячами файлов в нем. Чтобы ускорить поиск исполняемого файла, оболочка использует кэшированную хеш-таблицу для быстрого поиска. Это может устареть, поэтому «хэширование» дает вам знать, что «запомнили» эту команду, сопоставленную с этим исполняемым файлом unix.stackexchange.com/questions/5609/…pip
(2.7) иpip3
(3.x) были полностью установлены / обновлены, а не только первые - то есть,sudo apt-get install python-pip python3-pip
иsudo -H python2 -m pip install --upgrade pip
иsudo -H python3 -m pip install --upgrade pip
... Или, если это действительно проблема с разрешениями (обозначается как «это работает с sudo "), тогда будет немного сложнее выследить.12,04
Если вы следуете ответу Ачу , то этот термин
libread5-dev
следует изменить наlibreadline-gplv2-dev
. Таким образом, полная команда будет:источник
Вы также можете скачать и установить его через pyenv
источник
pyenv-virtualenv
плагин, что упрощает установку приложений с различными требованиями к модулю без конфликтов.bash --login
), которая не является всегда легко добиться, например, от Ansible. Лучше всего для интерактивного использования, менее хорошо для серверов сценариев.Главным образом зеркало этого ответа с измененной интро
Я бы порекомендовал pyenv . Он автоматизирует процесс сборки, помимо установки зависимостей заголовка (см. Ниже). Вы можете собрать и установить новую (или старую) версию Python, просто сказав
pyenv install 3.6.0
. Все работает как ваш пользователь, так что вам не нужно беспокоиться о том, чтобы испортить Python, используемый самой Ubuntu.В отличие от некоторых опций, основанных на apt-repo (например, deadsnakes), он, как правило, будет работать в тот же день после выпуска,
pyenv update
потому что вам не нужно ждать, пока кто-то другой упакует его. Посмотреть все версии, которые вы можете установить сpyenv install --list
Установить pyenv
Установите инструменты и заголовки, необходимые для сборки CPythons (экзотические Python, такие как PyPy или Jython, могут иметь другие зависимости). Git используется pyenv, плюс он также позволяет собирать / устанавливать исходные ветки, так что вы можете установить любую версию 3.8 прямо сейчас, то есть основную ветку CPython, свежую из GitHub:
Запустите скрипт установщика (устанавливает pyenv и некоторые очень полезные плагины pyenv от оригинального автора; подробнее здесь )
Добавьте строки инициализации к вашему
~/.profile
или~/.bashrc
(это упоминается в конце сценария установки):Перезапустите вашу оболочку (закройте и откройте или
exec $SHELL
) или перезагрузите скрипт профиля. (напримерsource ~/.bashrc
)Готово!
Настройка среды
Не трогать системный Python (как правило, плохая идея; службы уровня ОС могут полагаться на некоторые конкретные версии библиотек и т. Д.) Создать собственную среду, это просто! Даже лучше, нет
sudo
, для этого илиpip
устанавливает!Установите предпочитаемую версию Python (она загрузит исходный код и соберет его для вашего пользователя, ввод не требуется)
Сделайте это виртуальным, чтобы вы могли сделать других позже, если хотите
Сделайте это глобально активным (для вашего пользователя)
Делай что хочешь с Python / pip и т. Д. Он твой.
Если вы хотите очистить свои библиотеки позже, вы можете удалить virtualenv (
pyenv uninstall general
) или создать новую (pyenv virtualenv 3.6.0 other_proj
). Вы также можете иметь активную среду для каждого каталога:pyenv local other_proj
поместите.python-version
файл в вашу текущую папку, и каждый раз, когда вы вызываете Python или установленные в pip утилиты Python из нее или из нее, они будут отброшены pyenv.Поиск неисправностей
bash: pyenv: command not found
,fish: Unknown command 'pyenv'
$PATH
, должна быть одна запись, которая заканчивается чем-то вроде.pyenv/bin
. Если он отсутствует, убедитесь, что вы выполнили # 3 И # 4 (перезапустите вашу оболочку) в разделе Установка pyenv выше.pyenv: no such command 'virtualenv'
pyenv commands
.источник