我通过homebrew安装了vapor,然后立即想通过执行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卡塔琳娜,如果有关系的话。


当前回答

在macOS 10.9.5和macports 2.8.0的机器上:

sudo -s ln -s /opt/local/lib/openssl-1.0/libcrypto.1.0.0.dylib /opt/local/lib/libcrypto.1.0.0.dylib  

帮助

其他回答

我的建议是永远不要为了让构建工作而降低openssl lib版本。最好下载所需库的源代码,并根据本地主机上的openssl版本构建它。

我在经历同样的问题时看到了这篇文章,但不愿意降低openssl版本。最后把源代码和建立应用程序,它工作。我不知道为什么开发人员在他们的盒子上有他们的旧版本的openssl,他们建立dist包并针对这些旧版本发布。

建议brew update && brew upgrade作为解决方案不是一个很好的答案,因为这个错误出现在大多数情况下,由于执行这个…

切换到您只使用的上一个版本:brew Switch openssl XXX,就是这样。

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

brew uninstall vapor
brew install vapor/tap/vapor

它工作。

我也有类似的问题,运行下面的命令为我修复了错误:

brew update && brew upgrade

如果你没有家酿咖啡或者不知道是什么

/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上适用