Pregunta

Extraí, configuré y usé make para el paquete de instalación en mi servidor.

Sin embargo, no pude usar make install . Me sale el error

[~/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

Ejecuto la carpeta con

chmod +x Python-2.6.1

Todavía me sale el mismo error.

¿Cómo puedo ejecutar make install sin sudo access?

¿Fue útil?

Solución

  

¿Cómo puedo instalar en una ruta en mi directorio principal?

mkdir /home/masi/.local

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

Luego ejecute usando:

/home/masi/.local/bin/python

De manera similar, si tiene scripts (por ejemplo, CGI) que requieren su propia versión de usuario de Python, debe informarles explícitamente:

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

en lugar de usar el sistema por defecto de Python, que elegirá "#! / usr / bin / env python".

Puedes modificar la configuración de PATH para hacer que simplemente escriba "python" desde la consola y ejecute esa versión, pero esto no ayudará a que las aplicaciones web se ejecuten con un usuario diferente.

Si compilas algo que enlaza con Python (por ejemplo, mod_wsgi) tienes que decirle dónde encontrar tu Python o usará el sistema uno en su lugar. Esto se hace a menudo algo como:

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

Para otras extensiones basadas en setup.py como MySQLdb, simplemente tienes que ejecutar el script setup.py con la versión correcta de Python:

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

Otros consejos

No puedes; no a / usr , de todos modos. Solo los superusuarios pueden escribir en esos directorios. Intenta instalar Python en una ruta debajo de tu directorio de inicio.

Extendiendo la respuesta de Bobince, hay un problema si no tiene el paquete de desarrollo readline instalado en su sistema y no tiene acceso de root.

Cuando Python se compila sin línea de lectura, sus teclas de flecha no funcionarán en el intérprete. Sin embargo, puede instalar el paquete independiente readline de la siguiente manera: Agregar funcionalidad de Readline sin Recompilación Python

Por otro lado, si prefieres compilar python usando una instalación local de readline, aquí tienes cómo hacerlo.

Antes de hacer lo que Bobince estaba diciendo, compila e instala readline. Estos son los pasos para hacerlo:

Luego, agregue esta línea a su script .bash_profile:

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

Por último, pero no menos importante, ejecuta el siguiente comando

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

Espero que esto ayude a alguien!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top