Pipenv: Проблема после обновления Python до версии 3.7

Созданный на 24 авг. 2018  ·  12Комментарии  ·  Источник: pypa/pipenv

Описание проблемы

Я нахожусь на Mac и установил pre-commit используя brew и даже не спрашивая об этом, был обновлен с python 3.6.5 до 3.7. (3.6.5 также находился под контролем brew )

Теперь pipenv выдает ошибку «Библиотека не загружена».

Ожидаемый результат

Pipenv должен работать как до обновления python.

Фактический результат
$ pipenv -h
dyld: Library not loaded: @executable_path/../.Python
  Referenced from: /usr/local/Cellar/pipenv/2018.5.18/libexec/bin/python3.6
  Reason: image not found
Abort trap: 6
Комментарии
  1. Как правильно решить проблему? Могу ли я отредактировать какой-нибудь конфигурационный файл, чтобы вместо этого он указывал на 3.7?

  2. Может ли pipenv быть более снисходительным и полагаться на двоичный файл python3 вместо python3.6 ?

Самый полезный комментарий

У меня аналогичная проблема - где arch linux обновлен с 3.6.5 до 3.7, и теперь я получаю сообщение об ошибке всякий раз, когда пытаюсь запустить pipenv. Что работает для меня, но это действительно немного уродливый хак, - это сначала обновить pip, переустановить pipenv и для каждого репозитория, использующего pipenv, стереть виртуальную среду и воссоздать ее.
Я делаю что-то вроде:

rm -rf `pipenv --venv`
pipenv install --dev

и, похоже, это работает.

Примечание: вам также, вероятно, следует изменить требование в Pipfile с python 3.6 на 3.7.

Надеюсь, это поможет, но мне также интересно, есть ли более надежное решение ...

Все 12 Комментарий

У меня аналогичная проблема - где arch linux обновлен с 3.6.5 до 3.7, и теперь я получаю сообщение об ошибке всякий раз, когда пытаюсь запустить pipenv. Что работает для меня, но это действительно немного уродливый хак, - это сначала обновить pip, переустановить pipenv и для каждого репозитория, использующего pipenv, стереть виртуальную среду и воссоздать ее.
Я делаю что-то вроде:

rm -rf `pipenv --venv`
pipenv install --dev

и, похоже, это работает.

Примечание: вам также, вероятно, следует изменить требование в Pipfile с python 3.6 на 3.7.

Надеюсь, это поможет, но мне также интересно, есть ли более надежное решение ...

Это связано с тем, как Homebrew настраивает Python. Pipenv (или любые библиотеки Python) ничего не может с этим поделать. НЕ устанавливайте что-либо на Homebrew Python, если вы этого не хотите. Если это так, то единственный выход - переустановка.

Я помню, что несколько дней назад я прокомментировал аналогичную проблему, но пока не могу ее найти :(

@uranusjr Разве это не рекомендуется документами ?

Да так?

Установка Homebrew довольно сложна и находится вне нашего контроля, вы берете на себя некоторый риск, если используете ее (ни один из нас не использует Mac, поэтому мы действительно не можем предложить подробное представление об этом)

то, что сработало для меня, было
brew uninstall mkcert

Что сработало для меня, так это просто уничтожить все мои env: rm -rf /Users/william/.local/share/virtualenvs/* и переустановить env с помощью pipenv install .

@omrihar почему --dev ? В документах говорится: «Установите как разрабатываемые пакеты, так и пакеты по умолчанию». Означает ли это установку локальных пакетов (например, python setup.py develop)?

Изменить: с помощью установленного пивом pipenv (2018.11.26_2) с python3.7. У меня возникли проблемы на этапе блокировки установки, например, Locking Failed! или просто зависание на Locking

нам помогли:

$ brew uninstall pipenv
$ brew install python3.6
$ pip3 install --user pipenv
$ mkdir -p ~/bin
$ ln -s ../Library/Python/3.6/bin/pipenv ~/bin/

и если вы еще этого не сделали, добавьте ~ / bin / в свой PATH, отредактировав строку PATH в ~ / .bash_profile:

...
PATH=/Users/{your_username}/bin:{the_content_that_was_there_before}
...

Не забудьте закрыть и открыть оболочку

Я столкнулся с этой проблемой и решил ее, запустив в соответствии с документами

brew upgrade pipenv

Я столкнулся с той же проблемой после обновления версии OSX.

Решается удалением установки homebrew и последующим выполнением инструкций «Прагматической установки» :

pip install --user pipenv

Не забудьте добавить двоичный каталог базы пользователей в ваш PATH в соответствии с инструкциями.

Привет, у меня те же ошибки, но я не уверен, что мне нужно удалить и как.
Я попытался установить pipenv и получил ошибки, а затем увидел, что он не установлен. и просматривая журналы пивоварения, я вижу, что, похоже, установлен python3.8, который AFAIK не был установлен раньше (я использую 3.7)

Попытка удалить [email protected] не сработала, поскольку от него зависит awscli, что не имеет смысла, если он не был установлен раньше ...

Что мне обычно нужно удалить, чтобы решить эту проблему?
единственные журналы в ~ / Library / Logs / Homebrew имеют адрес [email protected] с момента установки.
мне кажется надо его деинсталлировать, кажется да? (может быть обновился awscli или что-то в этом роде ...)

Спасибо за вашу помощь.

Удаление python помогло. Благодарность

Была ли эта страница полезной?
0 / 5 - 0 рейтинги