dyld: библиотека не загружена: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib

151

Я установил пар с помощью homebrew, а затем сразу же захотел перейти в проект, выполнив, vapor new Helloно затем снова получил следующее сообщение в терминале:

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

Я попытался несколько подходов, чтобы исправить это, как удаление и переустановка openssl через brew, но это не сработало. Также попробовал кое-что, что я нашел в Интернете, но ничто не работало. Я предполагаю, что это как-то связано с паром, работающим только с версией 1.0.0, но не с 1.1.1, и это то, что я имею. Я думаю, мне нужно понизиться до 1.0.0, но как мне это сделать? Я на MacOS Catalina, если это имеет значение. Заранее спасибо.

Cronay
источник
Поддержка OpenSSL 1.1 была добавлена ​​в Vapor: github.com/vapor/open-crypto/pull/75
Михал Цишон,
Это может быть полезно для других: < stackoverflow.com/a/59224109/3776039 >
Unifreak
Я использовал этот метод, чтобы исправить /usr/local/bin/wget(это было выставлено plenv install-cpanm)
DouglasDD

Ответы:

442

Переключиться на более старый пакет openssl

brew switch openssl 1.0.2s

Или, в зависимости от вашей точной конфигурации системы, вам может потребоваться перейти на другую версию. Проверьте выходные данные ls -al /usr/local/Cellar/opensslдля номера версии для переключения.

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...
Smokie
источник
21
Это лучшее решение и самое простое. Тем не менее, Homebrew удалит пакеты, которые устарели. Не уверен, когда это решение перестанет работать
Tom10271
3
@ Leopathu, можешь ли ты уточнить, почему это должен быть одобренный ответ, а не тот, который я одобрил? Если это лучший ответ, я все еще могу его одобрить.
Cronay
10
Эта работа для меня с небольшим изменением последней буквы "r" brew switch openssl 1.0.2r на MacOS Catalina
juanitourquiza
4
лучшее решение. варочный переключатель openssl 1.0.2t в моем случае
Gold Chicken
14
brew switch openssl 1.0.2tпросто работал на меня. Спасибо чувак.
Джейсон Р
71

Попробуйте использовать 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)

В моем случае это начало работать, когда я использовал install_name_tool. Порядок параметра следующий: старое значение (неверное), затем новое значение (где у вас есть openssl) и путь к пару (который может быть легко получен) $(which vapor).

Михал Цишон
источник
4
Нижний подход решил это для меня, большое спасибо!
Cronay
2
Спасибо!! install_name_tool работал для меня
Эндрю Моррис
1
Большое спасибо, install_name_tool сделал мой день!
Седрик Моро
11
заварить обновление && заварить обновление будет обновить все пакеты, это вызывает ОГРОМНАЯ проблема
tom10271
2
да, пожалуйста, уберите brew upgradeиз ответа @ michal-cichon
macool
68

brew switch openssl 1.0.2s

у меня работал на "macOS Mojave", "версия 10.14.6".

Neeraj Jain
источник
Спасибо, моя таблица 2019.10.3 не открывалась в Mac OS Mojave, и эта команда помогла решить эту проблему!
Исаак Филипп
brew switch openssl 1.0.2p
Евхз
39
brew switch openssl 1.0.2q

MacOs Catalina Версия 10.15 работала на меня

douxsey
источник
Я должен был обновить и обновить Brew, прежде чем это сработало
Рикс
28

Для MacOS 10.15 Catalina попробуйте установить предыдущий openssl:

brew update && brew upgrade
brew uninstall --ignore-dependencies openssl
brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb
Кирилл Пляшкевич
источник
25

У меня такая же проблема. Я решил это, выполнив эти 2 команды:

brew uninstall vapor
brew install vapor/tap/vapor

Это сработало.

Edwardai
источник
Я только что обновил клиентский инструмент, не паровой, а wget в моем случае. Который затем использовал более позднюю версию opensslbrew upgrade vapor
flurdy
24

во-первых, перечислите детали установленной версии openssl (или других программ):

$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

как показано выше, в моем Mac есть только одна «правильная» версия «openssl». затем переключитесь на него:

$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
JZ
источник
Спасибо. Это спасло мой день.
khiav reoy
Спасибо! Это сработало!
Ксанкар
Это должен быть принятый ответ!
ActualAl
Я потратил целый день на установку, переустановку версий rails, гемов mysql2 с различными флагами и опциями. Это работает как шарм! Спасибо друг!
Мартинас Юркус
19
brew switch openssl 1.0.2t

каталина это нормально.

Джозеф НК
источник
18
brew switch openssl 1.0.2r

у меня работает, macOS Mojave, версия 10.14.6

lslboy
источник
У меня это работает (macOS Catalina, ruby ​​2.4.1, rails 5.2.2, openssl 1.1.1f). Перешел на 1.0.2с.
AntonAL
14

Это сработало для меня на моем Mac

brew switch openssl 1.0.2n

Серж Селецкий
источник
brew switch openssl 1.0.2sработал на меня на каталину.
Inanc Gumus
5

Простое обновление brew && brew upgrade помогло мне

Спиди Гонзалес
источник
работал на меня!
Aaronium112
3

Это может быть проблемой из-за наличия более старой версии brew и установленной byobu, которые требуют новой зависимости для решения этой проблемы, выполните следующую команду

brew update && brew upgrade
brew uninstall openssl; brew uninstall openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb
Balaji.JB
источник
1
Простой brew update && brew upgradeсделал свое дело для меня.
Вальканайя
3

Предложение brew update && brew upgradeв качестве решения не является хорошим ответом и, поскольку эта ошибка появляется в большинстве случаев из-за выполнения этого ...

Переключитесь на предыдущую версию, которую вы использовали только: brew switch openssl XXXи все.

Андреу Бойшадера Айала
источник
Ребята из гугл, актуальный ответ тут.
TrungDQ
2

У меня была похожая проблема, и на основании этого и других комментариев вот что получилось и сработало:

➜ 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

Это было после того, как я работал над этим часами, но впервые увидел доморощенных дупов. Не уверен, как Homebrew знал, что устанавливать, но казалось, что все устанавливается с нуля. macOS Каталина, зш. Я думаю, что первоначальная проблема возникла из-за Каталины

Я получил ошибку:

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
Greg
источник
0

Если у вас нет Homebrew или вы не знаете, что это такое

/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

Или, если у вас уже установлен Homebrew

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

Это работает для меня на Mac 10.15

Хусам Курд
источник
0

Я столкнулся с этой ошибкой с MySQL (версия: 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
Jai
источник