Apt-get install для разных версий python

У меня есть ubuntu 10.04 с python2.6 по умолчанию. Я установил python2.7.

Когда я хочу установить пакеты python с помощью

apt-get python-<package> 

он устанавливается на python2.6. Как я могу установить пакет для python2.7? Есть ли какой-нибудь вариант?

Я просмотрел этот, но я не смог найти такие каталоги в своей ОС. Я рассмотрел использование easy_install-2.7, но не все пакеты поддерживаются. Например python-torctl.

Меня больше интересует привязка python2.7 к apt-get install.

Ответы

Ответ 1

У Python есть свои собственные средства управления пакетами, параллельно с настройками Linux (включая Ubuntu). Репозиторий - это индекс пакета Pypi-Python, а пакеты устанавливаются с pip или easy_install script, который является частью Python setuptools пакет.

Как правило, вы не должны использовать оба пакета, установленные через pip/setuptools, и пакеты, доступные для вашего дистрибутива (через apt-get, yum, urpmi и т.д.), поскольку они могут конфликтовать.

Таким образом, одним из способов, с помощью которых он не справляется с ошибкой, заключается в том, чтобы иметь отдельную установку Python в вашей системе - оставить питон, входящий в систему для системных скриптов и т.д. - на этом питоне, использовать пакеты, установленные ваш менеджер пакетов. И установите другие версии Python (или даже те же), которые будут запущены с помощью "virtualenv" - на этой другой установке вы устанавливаете вещи только с помощью pip/setuptools.

(И даже если вы решите жить смело и не использовать virtualenvs, установив еще одну версию python на тот же префикс (/usr и даже /usr/local), чем ваша система Python является источником ошибок и конфликтов).

Обратите внимание, что системы Debian и Ubuntu разработали способ запуска параллельного официального Python в /usr и иметь apt-get для установки пакетов Python для обеих версий Python сразу. Это в основном работает, но они вовлекаются в иерархию каталогов по умолчанию Python, и некоторые приложения не могут использовать Python таким образом. (Также бесполезно найти файлы модулей в Debian или Ubuntu). Таким образом, вышеуказанный метод применяется в качестве рекомендации, даже если ваша система имеет более одной версии Python, доступной на apt-get.

Короче говоря, как только вы скомпилировали нужную версию Python, сделайте следующее:

  • используйте диспетчер системных пакетов для установки "python-setuptools" и "python-virtualenv" (не уверен, что это фактические имена пакетов).
  • Используйте virtualenv для создания среды, из которой вы будете использовать вашу другую версию Python
  • Активируйте свой virtualenv и установите пакеты Python с помощью pip на нем.

В Virtualenv есть переключатель "--help", который вам поможет, но вы в основном делаете:

$ virtualenv -p <path-to-python-interpreter>  <environment-dir>
$ source <environment-dir>/bin/activate

И там вы - все, что использует Python, "увидит" интерпретатор в virtualenv из-за установленных переменных среды.

Ответ 2

У Ubuntu 10.04 нет пакета python2.7. Вы должны создать 2.7 самостоятельно. Я прочитал статью о том, что Ubuntu выпустил пакет python2.7, когда вышел 12.04, но я не уверен, что такое местоположение репозитория.

http://eli.thegreenplace.net/2011/10/10/installing-python-2-7-on-ubuntu/

или

sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get install python2.7

https://askubuntu.com/info/101591/install-python-2-7-2-on-ubuntu-10-04-64-bit

В этом вопросе есть много ответов в Интернете.