Come utilizzare l'ultima versione di Python 2.7.x "The Right Way" su Ubuntu 12.04 LTS?


28

Il mio progetto deve rimanere aggiornato sulle versioni di Python, ma 12.04LTS è attualmente bloccato sulla 2.7.3, anche se la 2.7.5 è ora disponibile. C'è un modo per rimanere più aggiornato senza compilare manualmente? Dobbiamo rimanere sull'installazione basata su pacchetti per Python. Qual è il modo "giusto" per gestirlo?

Grazie!

Risposte:


14

EDIT: * Come ha sottolineato @Anthon nei commenti, questo PPA non include Python 2.7 per Ubuntu 12.04 (Preciso). Vedi la risposta funky-future di seguito , che non credo esistesse quando ho risposto inizialmente.

Il modo preferito "Ubuntu" per gestire i pacchetti non inclusi nel loro universo di default è usare un PPA (repository di terze parti), piuttosto che compilare manualmente. In questo modo si mantengono i vantaggi della gestione dei pacchetti, degli aggiornamenti e della risoluzione delle dipendenze.

Tuttavia, i repository di terze parti NON sono ufficialmente supportati, se questo fa parte del tuo requisito.

DeadSnakes (get it) PPA mantiene le versioni di Python non incluse nella gestione dei pacchetti di sistema.

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

Puoi leggere di più su questo PPA qui .

Tuttavia, nel tuo caso questo non include Python 2.7, poiché DeadSnakes fornisce solo versioni principali non incluse e non rilasci puntuali. Dato che Ubuntu contiene già i pacchetti 2.7 per Ubuntu 12.04, DeadSnakes non lo fornirà.

Potrebbe essere preferibile che tu valga la pena di non utilizzare il pacchetto nativo con Ubuntu in questo caso. Guarda questo estratto da 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.

Se sei assolutamente obbligato a utilizzare la gestione dei pacchetti dei sistemi operativi e non riesci a passare a una versione diversa di Ubuntu con un pacchetto fornito da DeadSnakes, o nativamente, di quanto restino solo due opzioni, come la vedo io.

  1. È possibile richiedere un backport di Python 2.7.5 su Ubuntu 12.04.
  2. È possibile creare il proprio PPA con la versione di Python richiesta.

nota a margine : AskUbuntu è uno StackExchange migliore per pubblicare cose come questa, rispetto a SuperUser in generale.


Perfetto grazie! Nella tua esperienza, DeadSnakes è ben mantenuto?
Will

2
Sì, sembra essere popolare e ben mantenuto. Userei poco prenotazione.
Krondor,

1
Ha solo 2.7.4 per il 10.04 non per il 12.04
Anthon il

1
@Anthon hai ragione, non me ne sono accorto. DeadSnakes non sostituirà una versione principale, quindi poiché Ubuntu raggruppa già Python 2.7, Deadsnakes non fornirà rilasci puntuali per quella serie. Piuttosto forniscono 3.3 per Precise. Questo non aiuterà l'OP in questo caso.
Krondor,

Il 14.04 ho dovuto usare ppa:fkrull/deadsnakes-python2.7(notare il suffisso)
Craig Younkins

37

Felix Krull ha anche mantenuto (come non ancora mantenuto) un PPA con l'ultima versione di Python 2.7 per Ubuntu Precise, Trusty e Utopic. È possibile utilizzare lo stesso processo come Krondor descrive, ma utilizzare al posto o additionaly questo 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

Questa dovrebbe essere la risposta accettata.
cr8ivecodesmith,

1
Ora ha un avviso "discontinuo", ma funziona bene con macchine che eseguono ancora versioni precedenti di Ubuntu. La PPA fornisce le versioni 2.7.12-1~precise1, 2.7.12-1~trusty1e 2.7.10-0+utopic1(per 12.04, 14.04 e 14.10).
mivk

5
Basta notare che frull / deadsnakes-python2.7 ppa è sospeso. Per le ultime versioni di Python 2.7 (come 2.7.13), prova a utilizzare jonathonf / python-2.7 ppa.
Socrate il

attenzione - questo mi ha causato problemi durante l'aggiornamento delle distribuzioni (12 -> 14) .. Mi è rimasto un pitone veramente morto .. Assicurati di annullare questo ppa prima di aggiornare ..
dermen

bene, questo è vero per qualsiasi aggiornamento di distribuzione e ppas.
funky-future
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.