dyld:库未加载:/usr/local/opt/openssl/lib/libssl.1.0.0.dylib


147

我通过自制软件安装了蒸气,然后立即想通过执行跳入项目,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

我尝试了一些方法来解决此问题,例如通过brew卸载并重新安装openssl,但这没有用。还尝试了我在互联网上找到的东西,但是没有任何效果。我认为它仅与蒸气有关,仅适用于1.0.0版本,但不适用于1.1.1,这就是我所拥有的。我想我需要降级到1.0.0,但是我该怎么做呢?如果重要的话,我在MacOS Catalina上。提前致谢。


对Vapor添加了对OpenSSL 1.1的支持:github.com/vapor/open-crypto/pull/75
Michal Cichon,

这可能对其他人有帮助:< stackoverflow.com/a/59224109/3776039 >
unifreak

我使用此方法进行了修复/usr/local/bin/wget(由公开plenv install-cpanm
DouglasDD

Answers:


429

切换到较旧的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...

20
这是最好的解决方案,也是最简单的。但是Homebrew将删除不推荐使用的软件包。不确定此解决方案何时会停止工作
tom10271 '19

3
@Leopathu您能详细说明为什么这应该是批准的答案,而不是我批准的答案吗?如果这是更好的答案,我仍然可以批准。
Cronay

10
这项工作对我来说稍有变化,在MacOS Catalina上的最后一个字母“ r”酿造开关openssl 1.0.2r
juanitourquiza

4
最好的解决方案。在我看来,brew switch openssl 1.0.2t
金鸡

14
brew switch openssl 1.0.2t只是为我工作。谢啦。
Jason R

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为我工作
Andrew Morris

1
非常感谢您,install_name_tool让我高兴!
塞德里克Moreaux的

11
brew update && brew upgrade将升级所有软件包,这会导致巨大的问题
tom10271 '19

2
是的,请brew upgrade从答案中删除@ michal-cichon
macool


39
brew switch openssl 1.0.2q

MacOs Catalina 10.15版对我有用


在此之前,我不得不升级和更新brew
ricks


25

我有同样的问题。我通过运行以下两个命令解决了它:

brew uninstall vapor
brew install vapor/tap/vapor

有效。


我只是升级了客户端工具,不是蒸气,而是我的wget。然后使用了openssl的更高版本brew 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

谢谢。它挽救了我的一天。
khiav reoy

谢谢!这工作了!
ksankar

这应该是公认的答案!
ActualAl

我花了一整天的时间安装,重新安装Rails版本,带有各种标志和选项的mysql2 gem。这就像一个魅力!谢了哥们!
Martynas Jurkus


18
brew switch openssl 1.0.2r

它对我有用,macOS Mojave,版本10.14.6


它对我有用(macOS Catalina,ruby 2.4.1,rails 5.2.2,openssl 1.1.1f)。切换到1.0.2s。
AntonAL



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

1
一个简单brew update && brew upgrade的为我做的把戏。
valcanaia

3

建议brew update && brew upgrade作为解决方案不是一个好的答案,并且由于大多数情况下会由于执行此错误而出现此错误...

切换到仅用于以前的版本:brew switch openssl XXX就是这样。


Google的专家们,实际答案在这里。
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 Catalina,zsh。我认为最初的问题来自卡塔琳娜

我得到的错误是:

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

如果您没有自制软件或不知道它是什么

/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
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.