Что означает" ошибка: опция --single-version-внешне управляемая не распознана"?
кажется, я внезапно начал сталкиваться с ошибкой error: option --single-version-externally-managed not recognized
, когда pip install
ING пакеты varions (включая PyObjC
и astropy
). Я никогда не видел эту ошибку раньше, но теперь она также появляется на сборках travis-ci, для которых ничего не изменилось.
указывает ли эта ошибка на устаревшее распространение? Или какой-то неправильно заданный параметр в setup.py
? Или что-то совсем другое?
6 ответов
Обновление:
установить последнюю версию setuptools
. Если вы все еще получаете ошибку, установите wheel
Как хорошо.
pip install -U setuptools
pip install -U wheel
Оригинальный Ответ / Подробнее:
--single-version-externally-managed
- это опция, используемая для пакетов Python, указывающая модулю setuptools создать пакет Python, которым можно легко управлять менеджером пакетов хоста, если это необходимо, например Yum или Apt.
если вы видите это сообщение, у вас может быть старая версия setuptools или Python. Попробуйте использовать Distribute, который является более новой версией setuptools и обратно совместим. Эти пакеты могут ожидать, что у вас уже есть.
https://pypi.python.org/pypi/distribute
Edit: на данный момент distribute был объединен в main . Просто установите последнюю версию setuptools
. Как указал @wynemo, вы можете использовать вместо этого, как это больше подходит для тех, кто выполняет ручную установку, где вы не собираетесь создавать системный пакет для распространения.
у меня была эта проблема. Оказалось, что это проблема с разрешениями на файл в моем кэше pip.
Если вы видите сообщение в самом начале вашего вывода pip, как
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.
у вас может быть такая же проблема. Вы можете решить его, либо убедившись, что у вас есть соответствующие разрешения на файл в вашем кэше pip (что-то вроде chown -R $(whoami) /home/ubuntu/.cache/pip
) или, если вы находитесь в UNIX, вы можете установить местоположение кэша pip с помощью XDG_CACHE_HOME
env var в какую-то папку, которой вы владеете.
У меня есть эта проблема на моем macbook также, когда я пытаюсь обновить один пакет python. Я проверяю версию pip в OS X, она слишком старая: 1.1. Я использую follow cmd для обновления pip до 1.5.6
easy_install -U pip
затем эта ошибка исправлена.