Domanda

Ho estratto, configurato e usato make per il pacchetto di installazione nel mio server.

Tuttavia, non ho potuto usare make install . Ottengo l'errore

[~/wepapps/python/Python-2.6.1]# make install
/usr/bin/install -c python /usr/local/bin/python2.6
/usr/bin/install: cannot create regular file `/usr/local/bin/python2.6': Permission denied
make: *** [altbininstall] Error 1

Corro la cartella con

chmod +x Python-2.6.1

Ottengo sempre lo stesso errore.

Come posso eseguire make install senza accesso sudo?

È stato utile?

Soluzione

  

Come posso installare su un percorso nella mia home directory?

mkdir /home/masi/.local

cd Python-2.6.1
make clean
./configure --prefix=/home/masi/.local
make
make install

Quindi esegui usando:

/home/masi/.local/bin/python

Allo stesso modo se hai degli script (es. CGI) che richiedono la tua versione utente di Python devi dirli esplicitamente:

#!/home/masi/.local/bin/python

invece di usare il sistema predefinito Python che & # 8220; #! / usr / bin / env python & # 8221; sceglierà.

Puoi modificare le impostazioni del PERCORSO per scrivere semplicemente & # 8220; python & # 8221; dalla console esegui quella versione, ma non sarà utile per le app Web eseguite con un altro utente.

Se compili qualcosa che si collega a Python (es. mod_wsgi) devi dirgli dove trovare il tuo Python o userà invece quello di sistema. Questo è spesso fatto qualcosa del tipo:

./configure --prefix=/home/masi/.local --with-python=/home/masi/.local

Per altre estensioni basate su setup.py come MySQLdb devi semplicemente eseguire lo script setup.py con la versione corretta di Python:

/home/masi/.local/bin/python setup.py install

Altri suggerimenti

Non puoi; non / usr , comunque. Solo i super utenti possono scrivere in quelle directory. Prova invece a installare Python in un percorso nella tua home directory.

Estendendo la risposta bobince, c'è un problema se non hai il pacchetto di sviluppo readline installato nel tuo sistema e non hai accesso root.

Quando Python viene compilato senza readline, i tasti freccia non funzioneranno nell'interprete. Tuttavia, è possibile installare il pacchetto standalone readline come segue: Aggiunta della funzionalità Readline senza ricompilare Python

D'altra parte, se preferisci compilare Python usando un'installazione locale di readline, ecco come.

Prima di fare come diceva Bobince, compilare e installare readline. Questi sono i passaggi per farlo:

Quindi, aggiungi questa riga al tuo script .bash_profile:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/.local/lib

Ultimo, ma non meno importante, eseguire il seguente comando

export LDFLAGS="-L$HOME/.local"

Spero che questo aiuti qualcuno!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top