ruby-on-rails 未加载库:/usr/local/opt/openssl/lib/libssl.1.0.0.dylib(LoadError)

ui7jx7zq  于 2023-05-19  发布在  Ruby
关注(0)|答案(5)|浏览(115)

我以前试图为一个应用程序做一个新的Rails后端。当我试图cd到应用程序,终端说:rvm install“ruby-2.6.5”
当我试图安装它时,我得到了一个错误:
运行“__rvm_make -j8”时出错,
所以,我正试图切换到另一个应用程序,以前的工作,有轨道作为后端。
我安装了两个Ruby版本:2.3.7和2.6.1 - 2.6.1是当前版本。
我正在尝试运行rails服务器,当我这样做时-终端中的以下错误是我得到的:

57: from bin/rails:3:in `<main>'
    56: from bin/rails:3:in `load'
    55: from /Users/yoyotoo/Desktop/flatiron/pets/pets_backend/bin/spring:15:in `<top (required)>'
    54: from /Users/yoyotoo/Desktop/flatiron/pets/pets_backend/bin/spring:15:in `require'
    53: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/spring-2.1.0/lib/spring/binstub.rb:11:in `<top (required)>'
    52: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/spring-2.1.0/lib/spring/binstub.rb:11:in `load'
    51: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/spring-2.1.0/bin/spring:49:in `<top (required)>'
    50: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/spring-2.1.0/lib/spring/client.rb:30:in `run'
    49: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/spring-2.1.0/lib/spring/client/command.rb:7:in `call'
    48: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/spring-2.1.0/lib/spring/client/rails.rb:28:in `call'
    47: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/spring-2.1.0/lib/spring/client/rails.rb:28:in `load'
    46: from /Users/yoyotoo/Desktop/flatiron/pets/pets_backend/bin/rails:9:in `<top (required)>'
    45: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:325:in `require'
    44: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:291:in `load_dependency'
    43: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:325:in `block in require'
    42: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
    41: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
    40: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
    39: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
    38: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
    37: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/railties-6.0.0/lib/rails/commands.rb:18:in `<main>'
    36: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/railties-6.0.0/lib/rails/command.rb:46:in `invoke'
    35: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/railties-6.0.0/lib/rails/command/base.rb:65:in `perform'
    34: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/thor-0.20.3/lib/thor.rb:387:in `dispatch'
    33: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/thor-0.20.3/lib/thor/invocation.rb:126:in `invoke_command'
    32: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/thor-0.20.3/lib/thor/command.rb:27:in `run'
    31: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/railties-6.0.0/lib/rails/commands/server/server_command.rb:138:in `perform'
    30: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/railties-6.0.0/lib/rails/commands/server/server_command.rb:138:in `tap'
    29: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/railties-6.0.0/lib/rails/commands/server/server_command.rb:141:in `block in perform'
    28: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:325:in `require'
    27: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:291:in `load_dependency'
    26: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:325:in `block in require'
    25: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
    24: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
    23: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
    22: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
    21: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
    20: from /Users/yoyotoo/Desktop/flatiron/pets/pets_backend/config/application.rb:7:in `<main>'
    19: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bundler-2.0.2/lib/bundler.rb:114:in `require'
    18: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bundler-2.0.2/lib/bundler/runtime.rb:65:in `require'
    17: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bundler-2.0.2/lib/bundler/runtime.rb:65:in `each'
    16: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bundler-2.0.2/lib/bundler/runtime.rb:76:in `block in require'
    15: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bundler-2.0.2/lib/bundler/runtime.rb:76:in `each'
    14: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bundler-2.0.2/lib/bundler/runtime.rb:81:in `block (2 levels) in require'
    13: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
    12: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
    11: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
    10: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
     9: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
     8: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/pg-1.1.4/lib/pg.rb:4:in `<main>'
     7: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:325:in `require'
     6: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:291:in `load_dependency'
     5: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/activesupport-6.0.0/lib/active_support/dependencies.rb:325:in `block in require'
     4: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
     3: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
     2: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
     1: from /Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
/Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require': dlopen(/Users/yoyotoo/.rvm/gems/ruby-2.6.1/gems/pg-1.1.4/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/yoyotoo/.rvm/gems/ruby-2.6.1/gems/pg-1.1.4/lib/pg_ext.bundle```

please help! thanks!
unguejic

unguejic1#

如果其他人像我一样遇到这个错误,下面是对我有效的方法:

ln -s /usr/local/opt/openssl/lib/libssl.dylib /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
ln -s /usr/local/opt/openssl/lib/libcrypto.1.1.dylib /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib

从那以后一切都很顺利。我猜这个库引用了一些旧的dylib文件,并且可以使用系统上安装的新文件。

fcipmucu

fcipmucu2#

对我来说,我不得不

brew uninstall postgres
brew install postgres

gem uninstall pg
bundle install
oug3syen

oug3syen3#

对我来说,只要安装适当版本的openssl就可以了。

brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

参考:https://github.com/kelaberetiv/TagUI/issues/86

oxcyiej7

oxcyiej74#

我的系统上安装了openssl1.1,但rails不知何故使用了旧的引用,即/usr/local/opt/openssl/lib/libssl.1.0.0.dylib (LoadError),但这在我的Mojave 14上不存在。
我尝试了以下方法,但没有成功:

  1. brew switch openssl 1.0.2t(错误:未知命令:开关)
    1.重新安装OpenSSL
    1.将openssl版本降级到1.0
  2. Reintalling rvm和ruby

最后,下面的解决方案是可行的:

cp /usr/local/opt/openssl/lib/libssl.1.1.dylib /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
cp /usr/local/opt/openssl/lib/libcrypto.1.1.dylib /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib

只要把新的openssl链接复制到旧的就可以了

bvn4nwqk

bvn4nwqk5#

在我的情况下(macOS 12.6.5,ruby 2.0.0),我必须将我的ruby版本升级到3.0.0以使openssl兼容。升级后,我可以运行gem update/install没有问题。
关于Ruby版本,我参考了GitHub上的这篇文章。

相关问题