0

我正在使用 Mac OS 进行开发。现在我正在使用 Blockcypher API 开发一个应用程序。使用 Ruby on Rails,当我尝试使用 Gem 汇款时,它总是返回此错误

FFI::NotFoundError(在 [libssl.dylib] 中找不到函数“OPENSSL_init_ssl”)

已经尝试在我的 mac 上升级或降级 OpenSSL 版本,但什么也没发生,这太令人沮丧了。我在 linux 上的朋友没有收到此错误,可以在他的设备上完美运行。有没有人遇到过这个错误?

4

1 回答 1

0

我遇到了同样的问题,经过一天的研究,我找到了 rvm ruby​​-2.7.2 版本的解决方案:

  1. 安装 openssl 1.1 版:

brew update & brew upgrade & brew install openssl@1.1

  1. 在我的情况下,在您的 openssl lib 文件夹中 cd:/usr/local/opt/openssl@1.1/lib 将文件复制到/usr/lib

cd /usr/local/opt/openssl@1.1/lib

  1. 复制libssl.1.1.dylib文件

sudo cp libssl.1.1.dylib libcrypto.1.1.dylib /usr/local/lib/

  1. 制作软链接

sudo ln -s libssl.1.1.dylib libssl.dylib

sudo ln -s libcrypto.1.1.dylib libcrypto.dylib

  1. 使用 openssl 版本重新安装 ruby​​:

rvm reinstall 2.7.2 --with-openssl-dir=/usr/local/opt/openssl@1.1

参考github 问题stackoverflow

于 2021-08-26T17:15:42.420 回答