Як користуватися останнім Python 2.7.x "Правильний шлях" на Ubuntu 12.04 LTS?


28

Мій проект повинен залишатися в курсі випусків Python, але 12.04LTS наразі затриманий на 2.7.3, хоча 2.7.5 зараз немає. Чи є спосіб я залишатися більш актуальним, не збираючи вручну? Нам потрібно зупинитися на пакетній установці для Python. Який "правильний" спосіб вирішити це?

Дякую!

Відповіді:


14

EDIT: * Як в коментарях зазначав @Anthon, цей PPA не включає Python 2.7 для Ubuntu 12.04 (точно). Дивіться відповідь фанкі-майбутнього нижче , яка, я не вважаю, існувала, коли я спочатку відповіла.

Кращим "Ubuntu" способом поводження з пакетами, які за замовчуванням не включені до їх Всесвіту, є використання PPA (стороннє сховище), а не компіляція вручну. Ви таким чином зберігаєте переваги керування пакунками, оновлень та вирішення залежностей.

Однак сторонні сховища НЕ офіційно підтримуються, якщо це є частиною вашої вимоги.

DeadSnakes (отримати його) PPA підтримує випуски Python, не включені в управління системними пакетами.

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

Ви можете прочитати більше про цей ЗРУ тут .

Однак у вашому випадку це не включає Python 2.7, оскільки DeadSnakes надає лише основні версії, які не включені, і не вказують точкові релізи. Оскільки Ubuntu вже пакує 2.7 для Ubuntu 12.04, DeadSnakes не надасть цього.

Вам може бути краще зробити так, що в цьому випадку ви не повинні використовувати вбудовану упаковку з Ubuntu. Дивіться цей уривок DeadSnakes;

Using third-party modules packaged for Debian or Ubuntu with the Python
interpreters from this repository is a bit of a mixed bag. For Python 2, Python
modules from the official repositories will not work, as a consequence of how
Python packaging works in Debian. For Python 3 on the other hand, all
pure-Python module packages at least should be available; compiled extension
modules will not work however.

In general, you're better off installing Python modules using the common Python
packaging tools rather than the system package manager. For an introduction into
the Python packaging ecosystem and its tools, refer to;
    http://guide.python-distribute.org/

A few of these tools might also be provided in this repository as a convenience.

Якщо ви абсолютно зобов'язані використовувати управління пакетами операційних систем і не можете перейти до іншої версії Ubuntu з пакетом, наданим DeadSnakes, або, як правило, у вас залишилось лише два варіанти, як я бачу.

  1. Ви можете подати запит на підтримку Python 2.7.5 на Ubuntu 12.04.
  2. Ви можете створити свій власний PPA з потрібною версією Python.

бічна примітка : AskUbuntu - це кращий StackExchange для публікації подібних матеріалів, ніж SuperUser взагалі.


Ідеально, дякую! З вашого досвіду, чи DeadSnakes добре підтримується?
Чи буде

2
Так, це здається популярним і доглянутим. Я б мав невелике застереження, використовуючи це.
крондор

1
Він має лише 2,7,4 за 10,04, не для 12,04
Антон

1
@Anthon ти прав, я цього не помічав. DeadSnakes не замінить основного випуску, тому оскільки Ubuntu вже вбудовує Python 2.7, Deadsnakes не надаватиме точкові релізи для цієї серії. Швидше вони надають 3.3 для точності. Це не допоможе ОП у цьому випадку.
крондор

14.04 мені довелося вживати ppa:fkrull/deadsnakes-python2.7(зверніть увагу на суфікс)
Крейг Юнкінс

36

Фелікс Крулл також підтримав (як і зараз незрозумілий) PPA з останньою версією Python 2.7 для Ubuntu Precision, Trusty та Utopic. Ви можете використовувати одну й ту ж процес , як Крондор описує, але використовувати замість або додатково цього PPA: ppa:fkrull/deadsnakes-python2.7.

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

Це має бути прийнятою відповіддю.
cr8ivecodesmith

1
Це попередження має "припинене", але добре працює для машин, які все ще працюють у старих версіях Ubuntu. PPA надає версію 2.7.12-1~precise1, 2.7.12-1~trusty1і 2.7.10-0+utopic1(для 12.04, 14.04 і 14.10).
mivk

5
Зауважте лише, що завершення / deadsnakes-python2.7 ppa припинено. Для останніх версій Python 2.7 (наприклад, 2.7.13) спробуйте використовувати jonathonf / python-2.7 ppa.
Сократ

попередження - це спричинило проблеми для мене під час оновлення дистрибутивів (12 -> 14) .. У мене залишився справді мертвий пітон .. Не забудьте скасувати цю програму перед оновленням ..
дерм.

ну це справедливо для будь-якого оновлення дистрибуції та пап.
funky-future
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.