python instalar - Los paquetes de Python no se instalan en virtualenv usando pip




1 Answers

El problema aquí es que estás usando sudo cuando no deberías. Y eso está causando que pip intente instalar en /usr/local/lib lugar de ~/glenv/lib . (Y, debido a que sudo , está haciéndolo con éxito, pero eso no te ayuda, porque no estás permitiendo paquetes de sitio del sistema en tu entorno).

Hay varias razones por las que sudo pip podría llevar a este comportamiento, pero lo más probable es esto: en la mayoría de los sistemas (incluidos los distintos Mac y RHEL / CentOS boxes a los que tengo acceso inmediato), el archivo sudoers restablecerá su entorno y luego volverá a agregar en un puñado de variables de entorno incluidas en la lista blanca. Esto significa que cuando sudo pip , no verá las variables de entorno que virtualenv establece, por lo que volverá a hacer lo predeterminado e instalar en su sistema Python, en lugar de su venv.

Pero realmente, no importa por qué está sucediendo esto. La respuesta es la misma: simplemente haz la pip install lugar de sudo pip install .

Tenga en cuenta que también desea eliminar el sudo en la llamada virtualenv , ya que esto probablemente hará que el venv se configure incorrectamente (razón por la cual necesita sudo chmod , que de otro modo no sería necesario). El objetivo de instalar cosas en su directorio de inicio de usuario es que puede hacerlo con sus permisos de usuario normales.

Como nota al margen, también es posible que desee actualizar a un virtualenv / pip , ya que 1.8 y 1.2 tienen algunas correcciones de errores y mejoras. Pero verifiqué que tengo exactamente el mismo problema que con las versiones más recientes (1.8.4 y 1.2.1), así que no creo que sea relevante aquí.

windows 10

Tengo problemas para instalar torcido

pip --version

pip 1.1 de /home/chris/GL/GLBackend/glenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg (python 2.7)

Crea un ambiente virtual

[email protected] ~/GL/GLBackend $ sudo virtualenv -p python2.7 glenv

Ejecutando virtualenv con el intérprete /usr/bin/python2.7 Nuevo ejecutable de python en glenv / bin / python2.7 También creando el ejecutable en glenv / bin / python Instalando distribuye ................ .................................................. .................................................. .................................................. .......................hecho. Instalando pip ............... hecho.

Por las dudas, habilitaré todos los permisos

[email protected] ~/GL/GLBackend $ sudo chmod -R 777 glenv

[email protected] ~/GL/GLBackend $ source glenv/bin/activate


(glenv)[email protected] ~/GL/GLBackend $ pip freeze

argparse == 1.2.1 distribuir == 0.6.24 wsgiref == 0.1.2

retorcido no aparece aquí como instalado

(glenv)[email protected] ~/GL/GLBackend $ sudo pip install twisted

Requisito ya satisfecho (uso --actualización para actualizar): retorcido en /usr/local/lib/python2.7/dist-packages Requisito ya satisfecho (use --actualización para actualizar): zope.interface> = 3.6.0 in / usr / local / lib / python2.7 / dist-packages (de twisted) Requisito ya satisfecho (use --actualización para actualizar): distribuir en /usr/local/lib/python2.7/dist-packages (desde zope.interface > = 3.6.0-> retorcido) Limpiar ... (glenv) chris @ chris-mint ~ / GL / GLBackend $ pip uninstall twisted No se puede desinstalar el requisito retorcido, no instalado Almacenar log completo /home/chris/.pip/ pip.log

Pero cuando lo instalo, dice que ya está instalado. Forzar la instalación:

sudo pip install -I twisted

Descargando / descargando twisted Descargando Twisted-12.3.0.tar.bz2 (2.6Mb): 2.6Mb descargado Ejecutando setup.py egg_info para el paquete twisted. . .

Instalado con éxito zope twisted. Distribuir limpiar ...

Y, sin embargo, todavía no está instalado

(glenv)[email protected] ~/GL/GLBackend $ pip freeze

argparse == 1.2.1 distribuir == 0.6.24 wsgiref == 0.1.2

** Cuando intento ejecutar scripts de Python que usan retorcidos, aparece un error que dice que twisted no está instalado. Es decir:

ImportError: ningún módulo llamado twisted.python **




Related