Ошибка среды [Errno 2] при установке пакетов pip или обновлении pip - PullRequest
0 голосов
/ 23 февраля 2019
До недавнего времени

пункт работал нормально.Сначала я пытался установить pip-пакет, используя

pip install -e [some-git-link]

, и я получаю сообщение об ошибке

Не удалось установить пакеты из-за ошибки EnvironmentError: [Errno 2] Нет такого файлаили каталог: '/home/me/.local/lib/python2.7/site-packages/pip-19.0.1.dist-info/METADATA'

Затем я зашел на сайт-пакеты и папка пуста.Действительно, в дис-пакетах установлен pip, и его версия 18.1, а не 19.0!

Я пытался обновить pip через

pip install -U pip

, но я получаю ту же ошибку.

Набрав

pip --version

Я получаю

/ usr / local / lib / python2.7 / dist-packages / pip / _vendor / запросы / init .py: 83: RequestsDependencyWarning: Старая версия криптографии ([1, 2, 3]) может вызвать замедление.warnings.warn (warning, RequestsDependencyWarning)

pip 18.1 из /usr/local/lib/python2.7/dist-packages/pip (python 2.7)

, поэтому кажется, чтопип 18.1 установлен.Действительно, если я попробую

sudo apt-get install python-pip

, я получу

python-pip - это уже самая последняя версия (8.1.1-2ubuntu0.4).

0обновлен, 0 недавно установлен, 0 для удаления и 62 не обновлен.

Мне было интересно, все ли эти проблемы были связаны с предупреждением о криптографии, и поэтому я попытался сделать

sudo pip install --upgrade cryptography

но, очевидно, я возвращаюсь к той же самой ошибке среды.

Ответы [ 3 ]

0 голосов
/ 18 марта 2019

Не используйте sudo с pip.Использование sudo с pip вызывает проблемы.Когда вы делаете это, у вас есть pip, и менеджер пакетов вашей ОС вступает в борьбу.Когда они сражаются, никто не побеждает, меньше всего - ваш инсталляция Python и личный разум.Я знаю, что бесчисленные учебники говорят вам sudo pip install, но они не ваши друзья.Единственный безопасный и надежный способ поддерживать функциональную установку Python - это позволить менеджеру пакетов вашей ОС управлять тем, чем она хочет управлять, и использовать либо pip install --user, либо виртуальные среды (используя либо virtualenv, либо дополнительно python -m venv, если вы используетеPython 3).

Я действительно не могу подчеркнуть, что вы будете постоянно сталкиваться с небольшими странными вещами (и случайными катастрофическими проблемами) в вашей установке Python, если вы будете постоянно устанавливать sudo.Учитесь любить виртуальные среды!Вы даже можете изменить PATH вашей оболочки так, чтобы вещи, которые вы устанавливаете в среде, были доступны в виде команд (именно поэтому люди думают, что им нужен sudo pip install).

0 голосов
/ 01 июля 2019

Как бороться с «Не удалось установить пакеты из-за ошибки EnvironmentError» при обновлении pip

Первый запуск командной строки в режиме администрирования как в окне, так и в ОС:

Далее,

Для Windows: используйте эту команду для обновления pip

+ *python -m pip install --user --upgrade pip*

Для MacOS:

+  $ *sudo python -m pip install --user --upgrade pip*
0 голосов
/ 17 марта 2019

Вы можете протестировать обновление PythonOpenSSL:

$ sudo python -m easy_install --upgrade pyOpenSSL

Если не в порядке, выполните:

$ sudo pip install --обновление криптографии

Но ошибка с: $ sudo pip

Так же после:

$ sudo python -m easy_install --upgrade pyOpenSSL

Получайте удовольствие,

Йохан MRe

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...