Будет ли доступно python2.7 для 10.04 в будущем?

27

Так как Ubuntu 10.04 является выпуском LTS, он поддерживает python 2.7 в качестве версии поддержки пакета по умолчанию или, по крайней мере, имеет пакет python2.7 в будущем?

Поскольку это будет последний крупный релиз python 2.x и предназначен для долгого использования, я решил использовать его. Я скомпилировал его из источника (после того, как, конечно, построил отпечатки), но время от времени я нахожу небольшие проблемы.

Безопасно ли определять мой скомпилированный python 2.7 по умолчанию, так как есть некоторые приложения для распространения, которые работают на python.

    
задан crodjer 17.12.2010 в 07:01
источник

5 ответов

16

Нет, это не считается безопасным для определения 2.7 в качестве вашего интерпретатора Python по умолчанию в Lucid . И я не думаю, что это будет в будущем.

  • В одном выпуске нет обновлений основной версии любого программного обеспечения.

    Таким образом, python2.7 не заменит 2.6 в качестве интерпретатора по умолчанию. Этот вид обновления выполняется только между версиями, в пределах одного - особенно LTS - есть только так называемые стабильные обновления релиза, то есть исправления и связанные с безопасностью обновления.

Однако совершенно безопасно использовать python2.7, определяя ваш интерпретатор как #!/usr/bin/python2.7 и устанавливая его пользователями, используя make altinstall в источнике python, наряду с python2.6

    
ответ дан Stefano Palazzo 17.12.2010 в 08:57
источник
41

Была та же проблема с VPS, которая не может быть обновлена ​​до Maverick (даже новые LTS-изображения не всегда доступны вовремя). ответ Мариуса сделал трюк чтобы начать меня, но его следует расширить:

Добавьте PPA в свои источники

Если вы в моей ситуации, простой совет по запуску add-apt-repository не будет работать для вас. Итак, давайте сделаем это старомодно:

  1. Откройте файл /etc/apt/sources.list (вам понадобятся права root, если вы находитесь в оболочке, вероятно, это означает, что работает sudo vim /etc/apt/sources.list ).

  2. Пройдите до конца файла (если используете vim , переключитесь в режим вставки, нажав i ) и добавьте следующие строки:

    deb http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu lucid main 
    deb-src http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu lucid main 
    
  3. Сохраните и выйдите (в vim : введите :wq ) и вернитесь в оболочку.

  4. Введите следующее (вы можете найти правильный ключ в PPA , это часть после косой черты "технические детали" - убедитесь, что вы получили правильный):

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DB82666C
    
  5. Теперь введите следующее, чтобы обновить исходный список:

    sudo apt-get update
    

Установить и настроить Python 2.7

  1. Откройте оболочку на своем сервере и введите следующее:

    sudo apt-get install python2.7 python2.7-dev
    
  2. Чтобы получить easy_install работы, получите скрипт distribute bootscrap:

    curl -O http://python-distribute.org/distribute_setup.py
    python2.7 distribute_setup.py
    
  3. Наконец, вы хотите, чтобы pip и virtualenv работали, если вы планируете сделать что-то серьезное:

    easy_install-2.7 pip
    pip-2.7 install virtualenv
    

Настройка виртуального файла

  1. Создайте папку для новой среды и откройте ее:

    mkdir my_env && cd my_env
    
  2. Создайте виртуальную среду (точка указывает, что текущий каталог - это местоположение среды, замените его правильным путем, если вы пропустили предыдущий шаг):

    virtualenv --no-site-packages --python=python2.7 .
    
  3. Активируйте среду. Вы заметите, что приглашение оболочки изменится, чтобы отобразить активную среду:

    source bin/activate
    
  4. Все, что вы делаете в этой оболочке, теперь будет использовать скрипты в папке bin виртуальной среды и пакетах Python этой среды. Помните, что опция --no-site-packages означает, что вы начинаете с минимального набора пакетов (в том числе pip , однако), поэтому вам нужно установить все необходимые вам пакеты.

  5. Когда вы закончите, отключите среду (это команда, признанная активной средой):

    deactivate
    

Вы также можете установить пакеты в виртуальную среду, передав -E для pip (например, pip install some-package -E /path/to/virtual/environment , чтобы установить some-package в виртуальную среду по данному пути). Имейте в виду, что у вас будет несколько разных версий pip , соответствующих различным версиям Python.

Рекомендуется использовать pip-2.7 , если вы хотите устанавливать пакеты для Python 2.7 при работе за пределами виртуальной среды (параметр --python=python2.7 , который мы передали в virtualenv , означает, что виртуальная среда будет использовать версии Python 2.7 инструменты, которые он предоставляет, поэтому вам не нужно беспокоиться об этом).

    
ответ дан Alan Plum 12.02.2011 в 18:55
10

Есть PPA с Python 2.7, созданным для Ubuntu 10.04. Это может быть безопаснее / удобнее, чем строить из источника.

    
ответ дан Marius Gedminas 20.12.2010 в 03:25
2

Это разрешило всевозможные проблемы, с которыми я столкнулся Ссылка .

Теперь libpython2.7.so.1.0 связывается с моим python2.7 и т. д., все кажется более счастливым.

Последняя часть, которую мне нужно было выяснить, это установка mod_wsgi . Если вы просто выполните:

$ apt-get install libapache2-mod-wsgi

Затем это будет скомпилировано для Python2.6: (

$ ldd /usr/lib/apache2/modules/mod_wsgi.so

libpython2.6.so.1.0 => /usr/lib/libpython2.6.so.1.0 (0x00178000)

Итак, я следовал инструкции, предоставленной Gork-Zope .

У меня наконец есть рабочий сервер. Спасибо.

    
ответ дан Naoko 27.09.2011 в 17:17
1

Я так не думаю, так как он должен будет изменить многие программы и библиотеки, связанные с версией 10.04. На самом деле многие работы в Ubuntu создаются с использованием конкретной версии python. Изменение его на python изменило бы множество системных файлов.

Для 10.10 он доступен из синаптических / способностей, просто устанавливая python2.7 (вы также можете установить 3 и 3.1), но за 10.04 нет работы, сделанной для 10.04.

10.10 имеет значение по умолчанию для python 2.6. Извините, если ответ не был положительным, а просто хотел дать вам представление об изменениях.

EDIT - изменен Python 2.7 на Python 2.6 по умолчанию, поскольку он был дважды проверен из комментариев ниже. Спасибо.

    
ответ дан Luis Alvarado 17.12.2010 в 08:51