116 votes

Que signifie "error : option --single-version-externally-managed not recognized" ?

Il semble que j'ai soudainement commencé à rencontrer l'erreur error: option --single-version-externally-managed not recognized lors de l'utilisation de pip install avec divers paquets (dont PyObjC y astropy ).

Je n'ai jamais vu cette erreur auparavant, mais elle apparaît maintenant aussi sur les constructions travis-ci pour lesquelles rien n'a changé.

Cette erreur indique-t-elle une distribution périmée ?

Une option incorrectement spécifiée dans setup.py ?

Quelque chose d'entièrement différent ?

136voto

wynemo Points 386

Ajouter --egg option

pip install --egg SCons

J'utilise pip version 1.4.1

111voto

Kelketek Points 518

Nouvelle mise à jour :

Installez la dernière version de setuptools . Si vous obtenez toujours l'erreur, installez wheel également.

pip install -U setuptools
pip install -U wheel

Réponse originale / Plus de détails :

--single-version-externally-managed est une option utilisée pour les paquets Python qui demande au module setuptools de créer un paquet Python qui peut être facilement géré par le gestionnaire de paquets de l'hôte si nécessaire, comme Yum ou Apt.

Si vous voyez ce message, vous avez peut-être une ancienne version de setuptools ou de Python. Essayez d'utiliser Distribute, qui est une version plus récente de setuptools et qui est rétroactive.

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

Edit : A ce stade, la distribution a été fusionnée dans la partie principale du site. setuptools projet. Il suffit d'installer la dernière version de setuptools . Comme l'a indiqué @wynemo, vous pouvez utiliser la fonction --egg à la place, car elle est plus appropriée pour ceux qui font des installations manuelles où vous n'avez pas l'intention de créer un paquetage système pour la distribution.

50voto

Seth Difley Points 1123

Installation de wheel a résolu ce problème avec de récentes pip (J'ai utilisé la version 8.1.2) :

pip install wheel

9voto

sparrowt Points 258

Essayez de mettre à jour setuptools comme ceci :

pip install --upgrade setuptools

5voto

sans Points 522

J'avais ce problème. Il s'est avéré que c'était un problème avec les permissions de fichiers sur mon cache pip.

Si vous voyez un message au tout début de votre sortie pip, du type

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.

vous pourriez avoir le même problème. Vous pouvez le résoudre soit en vous assurant que vous avez les permissions de fichiers appropriées sur votre cache pip (quelque chose comme chown -R $(whoami) /home/ubuntu/.cache/pip ) ou, si vous êtes sur un UNIX, vous pouvez définir l'emplacement du cache de pip avec la directive XDG_CACHE_HOME env var vers un dossier que vous possédez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X