2012-06-02 10 views
8

Sono in esecuzione su Linux e ho scaricato un modulo python che devo installare senza accesso a nessuna cartella, tranne la mia specifica directory/home/utente (non ho privilegi di root né l'opzione per seguirli).Come si può specificare o aggiungere una directory al percorso di ricerca Python.h durante la creazione/installazione di un modulo utilizzando setup.py?

Questo ovviamente richiede il sorgente Python. Questo ho scaricato e ho messo in giro in detta directory utente.

Mentre si chiede all'amministratore di copiare i file appropriati in /usr/include/python2.7 è il modo più semplice per farlo, spero in una soluzione più generale e portabile a questo tipo di problema.

Cambiando solo i dati nella sorgente del modulo (MANIFEST.in, README.txt, setup.py, ecc.), Come posso aggiungere una directory arbitraria al percorso di ricerca per Python.h e gli amici?

(Senza una soluzione, "python setup.py costruire" continuerà il ritorno con la "Python.h: No such file or directory" errore)

Grazie mille.

+0

Penso che pubblicare su [SuperUser] (http://superuser.com/) e/o [ServerFault] (http://serverfault.com/), potrebbe rivelarsi vantaggioso – inspectorG4dget

+0

Grazie, lo farò . – ca2longoria

+0

Questo potrebbe aiutare: http://docs.python.org/install/index.html#alternate-installation-the-user-scheme –

risposta

7

Per la creazione di pacchetti compilati, è necessario specificare il passaggio di configurazione di setup.py per cercare in un percorso diverso per i file di inclusione. Credo che questo può essere fatto in questo modo:

python setup.py config --with-includepath=/path/to/your/install/of/python/includes/ 

potrebbe anche essere necessario per raccontare setup.py circa la posizione di altri file (come ad esempio le biblioteche), nel qual caso date un'occhiata a:

python setup.py config --help 

e controlla le opzioni --libraries e --library-dirs. Per modificare la posizione del pacchetto risultante viene installato, utilizzare l'opzione prefix dopo la costruzione, ad es .:

python setup.py install --prefix=/path/to/install/to/ 

Sebbene l'esatta combinazione di opzioni desiderate potrebbe dipendere il pacchetto che si sta installando. Se è necessario farlo frequentemente, penso che si possa fare specificando un file di configurazione setup.cfg, come discusso here.

Problemi correlati