Il semble que j'ai soudainement commencé à rencontrer l'erreur error: option --single-version-externally-managed not recognized
lorsque pip install
ing différents packages (y compris PyObjC
et astropy
). Je n'avais jamais vu cette erreur auparavant, mais elle apparaît maintenant aussi sur les builds travis-ci pour lesquels rien n'a changé.
Cette erreur indique-t-elle une distribution obsolète? Ou une option spécifiée de manière incorrecte dans setup.py
? Ou quelque chose d'autre entièrement?
Nouvelle mise à jour:
Installez la dernière version de setuptools
. Si l'erreur persiste, installez également wheel
.
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 packages Python qui demandent au module setuptools de créer un package Python pouvant être facilement géré par le gestionnaire de packages 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 Python. Essayez d’utiliser Distribute, une version plus récente de setuptools et compatible avec les versions antérieures. Ces paquets peuvent s’attendre à ce que vous l’ayez déjà.
https://pypi.python.org/pypi/distribute
Éditer: À ce stade, la distribution a été fusionnée dans le projet setuptools
principal. Installez simplement la dernière version de setuptools
. Comme @wynemo l'a indiqué, vous voudrez peut-être utiliser l'option --Egg
, car elle convient mieux aux installations manuelles où vous n'avez pas l'intention de créer un package système à distribuer.
Ajouter l'option --Egg
pip install --Egg SCons
J'utilise pip
version 1.4.1
L’installation de wheel
a résolu ce problème avec une pip
récente (j’ai utilisé 8.1.2):
pip install wheel
Essayez de mettre à jour setuptools comme ceci:
pip install --upgrade setuptools
J'avais ce problème. Il s'est avéré que c'était un problème avec les autorisations de fichiers sur mon cache pip.
Si vous voyez un message au tout début de votre sortie pip, par exemple
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 résoudre ce problème en vous assurant que vous disposez des autorisations de fichiers appropriées sur votre cache pip (quelque chose comme chown -R $(whoami) /home/ubuntu/.cache/pip
) ou, si vous êtes sous UNIX, vous pouvez définir l'emplacement du cache pip avec la variable XDG_CACHE_HOME
env dans un dossier que vous possédez .
Je pense avoir la dernière version de tout et je ne peux pas installer 3.7.1 ou 3.5.3 dans mon système Debian 9 avec pip3.
Utiliser l’option --Egg est un non-démarreur: $ Sudo pip3 --Egg
Usage:
pip [options] pas une telle option: --Egg
J'ai ce problème sur mon macbook également lorsque j'essaye de mettre à jour un paquet python . Je vérifie la version de pip sous OS X, il est trop ancien: 1.1 . J'utilise follow cmd pour mettre à niveau pip à la version 1.5.6
easy_install -U pip
Alors cette erreur est corrigée.