Quando mi trovo in situazioni simili, generalmente evito il gestore di pacchetti, soprattutto se sarebbe imbarazzante rompere qualcosa, cioè un server di produzione. Invece, andrei su Activestate e scarica il loro pacchetto binario:
https://www.activestate.com/activepython/downloads/
Questo viene installato eseguendo uno script che inserisce tutto in una cartella e non tocca alcun file di sistema. In effetti, non hai nemmeno bisogno dei permessi di root per configurarlo. Quindi cambio il nome del binario in qualcosa come apy26, aggiungo quella cartella alla fine del PERCORSO e inizio a codificare. Se installi pacchetti con apy26 setup.py install
o se usi virtualenv e easyinstall, hai un ambiente python flessibile quanto ti serve senza toccare lo standard di sistema python.
Modifiche ... Recentemente ho lavorato per creare un binario Python portatile per Linux che dovrebbe essere eseguito su qualsiasi distribuzione senza dipendenze esterne. Ciò significa che qualsiasi libreria condivisa binaria necessaria al modulo Python portatile fa parte della build, inclusa nel tarball e installata nella struttura della directory privata di Python. In questo modo puoi installare Python per la tua applicazione senza interferire con il sistema installato Python.
Il mio sito GitHub ha uno script di compilazione che è stato accuratamente testato su Ubuntu Lucid 10.04 LTS sia per installazioni a 32 che a 64 bit. L'ho creato anche su Debian Etch ma è stato un po 'di tempo fa e non posso garantire di non aver cambiato qualcosa. Il modo più semplice per farlo è inserire la tua scelta di Ubuntu Lucid in una macchina virtuale, controllare lo script con git clone git://github.com/wavetossed/pybuild.git
e quindi eseguire lo script.
Una volta creato, usa il tarball su qualsiasi distribuzione Linux recente. C'è un piccolo inconveniente nello spostarlo in una directory diversa dalla /data1/packages/python272
quale è che devi eseguire l'incluso patchelf
per impostare il percorso dell'interprete PRIMA di spostare la directory. Ciò influisce su tutti i file binari in/data1/packages/python272/bin
Tutto ciò si basa sulla creazione con RUNPATH e sulla copia delle librerie condivise dipendenti. Anche se lo script è in diversi file, è effettivamente un lungo script di shell organizzato nello stile delle directory /etc/rc.d.