Estou em um Mac e instalei pre-commit
usando brew
e, sem nem pedir, fui atualizado do python 3.6.5 para o 3.7. (3.6.5 também estava sob o controle de brew
)
Agora o pipenv falha com o erro "Biblioteca não carregada".
Pipenv para funcionar como antes da atualização do 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
Qual é a maneira correta de corrigir o problema? Posso editar algum arquivo de configuração para apontar para 3.7 ao invés?
Poderia pipenv
ser mais tolerante e confiar no binário python3
vez do python3.6
?
Estou tendo um problema semelhante - onde o arch linux atualizou do 3.6.5 para o 3.7 e agora recebo um erro sempre que tento executar o pipenv. O que funciona para mim, mas é realmente um hack feio, é primeiro atualizar o pip, reinstalar o pipenv e para cada repositório usando pipenv, apagar o ambiente virtual e recriá-lo.
Eu faço algo como:
rm -rf `pipenv --venv`
pipenv install --dev
e isso parece funcionar.
Nota: você provavelmente também deve alterar o requisito no Pipfile de python 3.6 para 3.7.
Espero que isso ajude, mas também estou me perguntando se há uma solução mais robusta ...
Isso está relacionado a como o Homebrew configura o Python. Não há nada que o Pipenv (ou qualquer biblioteca Python) possa fazer sobre isso. NÃO instale coisas em um Homebrew Python se você não quiser que isso aconteça. Em caso afirmativo, a reinstalação é sua única opção.
Lembro que comentei sobre um problema semelhante há alguns dias, mas não consegui encontrar no momento :(
@uranusjr Mas isso não é recomendado pelos documentos ?
Sim então?
As instalações do Homebrew são meio complicadas e fora do nosso controle, você assume algum risco se usá-las (nenhum de nós usa um Mac, então realmente não podemos oferecer muitos insights sobre isso)
o que funcionou para mim foi
brew uninstall mkcert
O que funcionou para mim foi apenas destruir todos os meus envs: rm -rf /Users/william/.local/share/virtualenvs/*
, e reinstalar envs com pipenv install
.
@omrihar, por que a bandeira --dev
? Os documentos dizem "Instale os pacotes de desenvolvimento e padrão." Isso significa instalar pacotes locais (por exemplo, python setup.py Develop)?
Edit: using brew-installed pipenv (2018.11.26_2) w / python3.7. Eu estava tendo problemas na fase de bloqueio da instalação, por exemplo, Locking Failed!
ou apenas esperando Locking
o que nos ajudou foi:
$ brew uninstall pipenv
$ brew install python3.6
$ pip3 install --user pipenv
$ mkdir -p ~/bin
$ ln -s ../Library/Python/3.6/bin/pipenv ~/bin/
e se ainda não o fez, adicione ~ / bin / ao seu PATH editando a linha PATH em ~ / .bash_profile:
...
PATH=/Users/{your_username}/bin:{the_content_that_was_there_before}
...
Não se esqueça de fechar e abrir a concha
Eu estava tendo esse problema e resolvi-o executando de acordo com os documentos
brew upgrade pipenv
Eu tive o mesmo problema depois de atualizar a versão do OSX.
Resolvido desinstalando a instalação do homebrew e seguindo as instruções de "Instalação Pragmática" :
pip install --user pipenv
Não se esqueça de adicionar o diretório binário da base do usuário ao seu PATH de acordo com as instruções.
Olá, estou recebendo os mesmos erros, mas não tenho certeza do que preciso desinstalar e como.
Tentei instalar o pipenv e encontrei os erros, mas vi que não estava instalado. e olhando nos logs do brew, vejo que parece ter instalado o python3.8, que AFAIK não estava instalado antes (estou usando o 3.7)
Tentar desinstalar [email protected] não funcionou, pois awscli depende disso, o que não faria sentido se não tivesse sido instalado antes ...
O que geralmente preciso desinstalar para resolver esse problema?
os únicos registros em ~ / Library / Logs / Homebrew são de [email protected] a partir do momento da instalação.
parece-me que preciso desinstalá-lo, parece certo? (talvez awscli tenha sido atualizado ou algo assim ...)
Obrigado pela ajuda.
Desinstalar o python resolveu o problema. obrigado
Comentários muito úteis
Estou tendo um problema semelhante - onde o arch linux atualizou do 3.6.5 para o 3.7 e agora recebo um erro sempre que tento executar o pipenv. O que funciona para mim, mas é realmente um hack feio, é primeiro atualizar o pip, reinstalar o pipenv e para cada repositório usando pipenv, apagar o ambiente virtual e recriá-lo.
Eu faço algo como:
e isso parece funcionar.
Nota: você provavelmente também deve alterar o requisito no Pipfile de python 3.6 para 3.7.
Espero que isso ajude, mas também estou me perguntando se há uma solução mais robusta ...