dyld: Biblioteca não carregada: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib


149

Instalei o vapor via homebrew e, em seguida, imediatamente quis entrar em um projeto executando, vapor new Hellomas depois recebi a seguinte mensagem de volta no terminal:

dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
Referenced from: /usr/local/bin/vapor
Reason: image not found
zsh: abort      vapor new Hello

Eu tentei algumas abordagens para corrigir isso, como desinstalar e reinstalar o openssl via brew, mas isso não funcionou. Também tentei algo que encontrei na internet, mas nada funcionou. Presumo que ele tenha algo a ver com o vapor, trabalhando apenas com a versão 1.0.0, mas não com a 1.1.1 e é isso que eu tenho. Acho que preciso fazer o downgrade para a 1.0.0, mas como eu fiz isso? Estou no MacOS Catalina, se isso importa. Desde já, obrigado.


O suporte ao OpenSSL 1.1 foi adicionado ao Vapor: github.com/vapor/open-crypto/pull/75
Michal Cichon

Isso pode ser útil para outras pessoas: < stackoverflow.com/a/59224109/3776039 >
unifreak

Eu usei esse método para corrigir /usr/local/bin/wget(que foi exposto por plenv install-cpanm)
DouglasDD 08/01

Respostas:


437

Alterne para um pacote openssl antigo

brew switch openssl 1.0.2s

Ou, dependendo da configuração exata do sistema, pode ser necessário mudar para uma versão diferente. Verifique a saída de ls -al /usr/local/Cellar/opensslpara o número da versão para a qual mudar.

brew switch openssl 1.0.2q
# or
brew switch openssl 1.0.2r
# or 
brew switch openssl 1.0.2s
# or
brew switch openssl 1.0.2t
# etc...

20
Esta é a melhor solução e a mais simples. No entanto, o Homebrew removerá os pacotes obsoletos. Não tenho certeza quando isso vai parar solução de trabalho
tom10271

3
@ Leopathu, você pode explicar por que essa deve ser a resposta aprovada e não a que eu aprovei? Se essa é a melhor resposta, ainda posso aprová-la.
Cronay

10
Este trabalho para mim, com um pouco de mudança, a última letra "r" switch switch opensl 1.0.2r no MacOS Catalina
juanitourquiza

4
melhor solução. brew switch openssl 1.0.2t no meu caso
Gold Chicken

14
brew switch openssl 1.0.2tapenas funcionou para mim. Obrigado cara.
Jason R

71

Tente usar install_name_tool:

sudo install_name_tool -change /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/opt/openssl/lib/libssl.1.1.dylib $(which vapor)
sudo install_name_tool -change /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/opt/openssl/lib/libcrypto.1.1.dylib $(which vapor)

No meu caso, ele começou a funcionar quando eu usei install_name_tool. A ordem do parâmetro é a seguinte: valor antigo (incorreto), depois novo valor (onde você tem o seu openssl) e o caminho para o vapor (que pode ser facilmente encontrado) $(which vapor).


4
A abordagem mais baixa resolveu isso para mim, muito obrigado!
Cronay

2
Obrigado!! install_name_tool funcionou para mim
Andrew Morris

11
Muito obrigado, install_name_tool fez o meu dia!
Cédric Moreaux

11
bebida update && atualização bebida irá atualizar todos os pacotes, que provoca enorme problema
tom10271

2
Sim, por favor remova brew upgradeda resposta @ michal-cichon
macool

66

brew switch openssl 1.0.2s

trabalhou para mim no "macOS Mojave", "versão 10.14.6".


Obrigado, meu Tableau 2019.10.3 não estava sendo aberto no Mac OS Mojave e esse comando ajudou a resolver isso!
Isaac Philip

brew switch openssl 1.0.2p
Evhz 17/02

39
brew switch openssl 1.0.2q

A versão 10.15 do MacOs Catalina funcionou para mim


Eu tive que atualizar e atualizar o brew antes que isso funcionasse
ricks

28

Para o MacOS 10.15 Catalina, tente instalar o openssl anterior:

brew update && brew upgrade
brew uninstall --ignore-dependencies openssl
brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

25

Eu tive o mesmo problema. Eu o resolvi executando estes 2 comandos:

brew uninstall vapor
brew install vapor/tap/vapor

Funcionou.


Acabei de atualizar a ferramenta cliente, não vapor, mas wget no meu caso. Que então usou uma versão posterior do opensslbrew upgrade vapor
flurdy

24

primeiro, liste os detalhes da versão openssl instalada (ou outros programas):

$ls -al /usr/local/Cellar/openssl*
/usr/local/Cellar/openssl:
total 0
drwxr-xr-x    3 mba  staff    96 Nov 30 17:18 .
drwxrwxr-x  170 mba  admin  5440 Apr  8 02:03 ..
drwxr-xr-x   13 mba  staff   416 Nov 21 03:13 1.0.2t

/usr/local/Cellar/openssl@1.1:
total 0
drwxr-xr-x    4 mba  staff   128 Apr  7 18:35 .
drwxrwxr-x  170 mba  admin  5440 Apr  8 02:03 ..
drwxr-xr-x   14 mba  staff   448 Oct  1  2019 1.1.1d
drwxr-xr-x   14 mba  staff   448 Apr  7 18:35 1.1.1f

como na saída acima, existem apenas uma versão "certa" "openssl" no meu mac. então, mude para ele:

$brew switch openssl 1.0.2t                                 
Cleaning /usr/local/Cellar/openssl/1.0.2t
Opt link created for /usr/local/Cellar/openssl/1.0.2t

Obrigado. Isso salvou o meu dia.
khiav reoy 10/04

Obrigado! Isso funcionou!
ksankar 11/04

Essa deve ser a resposta aceita!
ActualAl

Passei um dia inteiro instalando, reinstalando as versões do Rails, o mysql2 gems com vários sinalizadores e opções. Isso funcionou como um encanto! Obrigado companheiro!
Martynas Jurkus


18
brew switch openssl 1.0.2r

funciona para mim, macOS Mojave, versão 10.14.6


Funciona para mim (macOS Catalina, ruby ​​2.4.1, rails 5.2.2, openssl 1.1.1f). Comutado para 1.0.2s.
AntonAL 19/04



3

Isso pode ser um problema devido à instalação da versão mais antiga do brew e do byobu, que exigem nova dependência para resolver esse problema, execute o seguinte comando

brew update && brew upgrade
brew uninstall openssl; brew uninstall openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

11
Um simples brew update && brew upgradefez o truque para mim.
valcanaia 29/01

3

Propor brew update && brew upgradecomo a solução não é uma boa resposta e, como esse erro aparece na maioria dos casos devido à execução deste ...

Mude para a versão anterior com a qual você estava usando apenas: brew switch openssl XXXe é isso.


Gente do Google, a resposta real está aqui.
TrungDQ 25/04

2

Eu tive um problema semelhante e, com base neste e em outros comentários, eis o que aconteceu e funcionou:

➜ brew update && brew upgrade && brew install openssl
remote: Repository not found.
fatal: repository 'https://github.com/Homebrew/homebrew-dupes/' not found
Error: homebrew/homebrew-dupes does not exist! Run `brew untap homebrew/homebrew-dupes` to remove it.
...
➜ brew untap homebrew/homebrew-dupes
➜ brew update && brew upgrade && brew install openssl

Isso foi depois de trabalhar por horas, mas pela primeira vez vi os homebrew-dupes. Não sabia como o Homebrew sabia o que instalar, mas parecia instalar tudo do zero. macOS Catalina, zsh. Eu acho que o problema inicial veio por causa da Catalina

O erro que eu estava recebendo era:

dlopen(/Users/gscar/.gem/ruby/2.7.0/gems/pg-1.2.2/lib/pg_ext.bundle, 9): Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib (LoadError)
  Referenced from: /usr/local/opt/postgresql/lib/libpq.5.dylib
  Reason: image not found - /Users/gscar/.gem/ruby/2.7.0/gems/pg-1.2.2/lib/pg_ext.bundle

0

Se você não possui o Homebrew ou não sabe o que é

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew update && brew upgrade
brew uninstall openssl; brew uninstall openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

Ou se você já possui o Homebrew instalado

brew update && brew upgrade
brew uninstall openssl; brew uninstall openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

Isso funciona para mim no Mac 10.15


0

Corri para este erro com o mysql (versão: 5.6.46_2), Mac (Mojave 10.14.5):

    brew update && brew upgrade
    brew now setup_mysql
    echo ‘export PATH=/usr/local/opt/mysql56/bin:$PATH”’ >> 
    ~/.bash_profile
    /usr/local/opt/mysql56/bin/mysql.server start
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.