modules all python pip distribute

python - modules - ¿Qué indica "error: opción--single-version-externally-managed not recognized"?



python modules pip (6)

Agregar la opción --egg

pip install --egg SCons

Yo uso la versión 1.4.1 de pip

Parece que de repente comencé a encontrar el error de error: option --single-version-externally-managed not recognized cuando pip install los paquetes varions (incluidos PyObjC y astropy ). Nunca antes había visto este error, pero ahora también aparece en compilaciones de travis-ci para las que nada ha cambiado.

¿Este error indica una distribución desactualizada? ¿O alguna opción especificada incorrectamente en setup.py ? ¿O algo completamente diferente?


Estaba teniendo este problema. Resultó que era un problema con los permisos de archivo en mi caché pip.

Si ve un mensaje al principio de su salida de pip como

The directory ''/home/ubuntu/.cache/pip/http'' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo''s -H flag. The directory ''/home/ubuntu/.cache/pip'' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo''s -H flag.

puedes tener el mismo problema Puedes resolverlo asegurándote de que tienes los permisos de archivo adecuados en tu caché pip (algo así como chown -R $(whoami) /home/ubuntu/.cache/pip ) o, si estás en un UNIX, puedes establecer la ubicación del caché de pip con el env de XDG_CACHE_HOME en alguna carpeta que usted posea.


Intente actualizar las herramientas de configuración de esta manera:

pip install --upgrade setuptools


La instalación de la wheel resolvió este problema con pip reciente (utilicé 8.1.2):

pip install wheel


También tengo este problema en mi macbook cuando intento actualizar un paquete de Python. Compruebo la versión de pip en OS X, es demasiado antigua: 1.1. Yo uso follow cmd para actualizar pip a 1.5.6

easy_install -U pip

Entonces este error es fijo.


Nueva actualización:

Instale la última versión de setuptools . Si todavía obtiene el error, instale la wheel también.

pip install -U setuptools pip install -U wheel

Respuesta original / Más detalles:

--single-version-externally-managed es una opción utilizada para los paquetes de Python que instruyen al módulo setuptools para crear un paquete de Python que puede ser fácilmente administrado por el administrador de paquetes del host si es necesario, como Yum o Apt.

Si está viendo este mensaje, puede tener una versión anterior de setuptools o Python. Intente utilizar Distribute, que es una versión más nueva de setuptools y es compatible con versiones anteriores. Estos paquetes pueden esperar que ya lo tengas.

https://pypi.python.org/pypi/distribute

Editar: en este punto, distribuir se ha fusionado en el proyecto principal de setuptools . Simplemente instale la última versión de setuptools . Como @wynemo indicó, es posible que desee utilizar la opción --egg lugar, ya que es más adecuada para aquellos que realizan instalaciones manuales en las que no tiene la intención de crear un paquete del sistema para la distribución.