首页 > 解决方案 > rake db:setup 未加载库:@rpath/libgssapi_krb5.2.2.dylib 错误

问题描述

我在 macOS 10.14.2 mojave 上运行 rake db:setup 在我的 mysql 数据库上时出现错误。它在其他项目中运行良好,当我gem list在其他项目中运行时,它们都有 mysql 0.5.2 和遏制 0.9.7。我曾经有相同的以下错误,除了它说 libssh2.1 而不是 libgssapi_krb5,所以我做了brew install libssh2,然后错误变成了这个。然后我尝试这样做brew install krb5,但这并没有什么不同。这是错误:

mbp-user:project user$ rake db:setup rake 中止!LoadError:dlopen(/Users/user/.rvm/gems/ruby-2.5.3/gems/curb-0.9.7/lib/curb_core.bundle,9):未加载库:@rpath/libgssapi_krb5.2.2.dylib 引用来自:/Users/user/.rvm/gems/ruby-2.5.3/gems/curb-0.9.7/lib/curb_core.bundle 原因:找不到图像 - /Users/user/.rvm/gems/ruby-2.5 .3/gems/curb-0.9.7/lib/curb_core.bundle /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:在require' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in块中要求'/Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:258:inload_dependency' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in要求'/Users/user/.rvm/ gems/ruby-2.5.3/gems/curb-0.9.7/lib/curl.rb:1:in<top (required)>' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in需要'/Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6 /lib/active_support/dependencies.rb:292:inblock in require' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:258:inload_dependency'/Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in '/Users/user/.rvm/gems/ require' /Users/user/.rvm/gems/ruby-2.5.3/gems/curb-0.9.7/lib/curb.rb:1:inruby- 2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:inrequire' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in块中的要求' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6 /lib/active_support/dependencies.rb:258:inload_dependency' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in需要'/Users/user/.rvm/gems/ruby-2.5.3/gems/user_client-3.7.0/lib/user_client/helpers/http_client.rb:1:在<top (required)>' /Users/user/.rvm/gems/ruby-2.5.3/gems/user_client-3.7.0/lib/user_client/helpers/authorized_request.rb:1:inrequire_relative'/Users/user /.rvm/gems/ruby-2.5.3/gems/user_client-3.7.0/lib/user_client/helpers/authorized_request.rb:1:in require_relative'/Users <top (required)>' /Users/user/.rvm/gems/ruby-2.5.3/gems/user_client-3.7.0/lib/user_client/adapter.rb:2:in/user/.rvm/ gems/ruby-2.5.3/gems/user_client-3.7.0/lib/user_client/adapter.rb:2:in<top (required)>' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in需要'/Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in block in require' /Users/user/.rvm/gems/ruby-2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:258:inload_dependency'/Users/user/.rvm/gems/ruby -2.5.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in require' /Users/user/.rvm/gems/ruby-2.5.3/gems/user_client-3.7.0/lib/user_client.rb:2:in' /Users/user/work/angel/config/application.rb:7:in <top (required)>' /Users/user/work/angel/Rakefile:6:inrequire_relative' /Users/user/ work/angel/Rakefile:6:in <top (required)>' /Users/user/.rvm/gems/ruby-2.5.3/gems/rake-12.3.1/exe/rake:27:in' /Users/user/.rvm/gems/ruby-2.5.3/bin/ruby_executable_hooks:24:in eval' /Users/user/.rvm/gems/ruby-2.5.3/bin/ruby_executable_hooks:24:in'

标签: ruby-on-railsrubyrubygems

解决方案


出现以下错误时:

rake db:drop 

或者

bundle exec rake db:drop

错误:

rake aborted!
LoadError: dlopen(/Users/afsan.abdulali.gujarati/.rvm/gems/ruby-2.4.6@introhive/gems/curb-0.9.10/lib/curb_core.bundle, 9): Library not loaded: @rpath/libgssapi_krb5.2.2.dylib
  Referenced from: /Users/afsan.abdulali.gujarati/.rvm/gems/ruby-2.4.6@introhive/gems/curb-0.9.10/lib/curb_core.bundle
  Reason: image not found - /Users/afsan.abdulali.gujarati/.rvm/gems/ruby-2.4.6@introhive/gems/curb-0.9.10/lib/curb_core.bundle
The thing that possibly fixed it:

解决方案:

brew install krb5

brew link --force krb5 

可能会给出以下输出:

Warning: Refusing to link macOS-provided software: krb5
If you need to have krb5 first in your PATH run:
  echo 'export PATH="/usr/local/opt/krb5/bin:$PATH"' >> ~/.bash_profile
  echo 'export PATH="/usr/local/opt/krb5/sbin:$PATH"' >> ~/.bash_profile

For compilers to find krb5 you may need to set:
  export LDFLAGS="-L/usr/local/opt/krb5/lib"
  export CPPFLAGS="-I/usr/local/opt/krb5/include"

For pkg-config to find krb5 you may need to set:
  export PKG_CONFIG_PATH="/usr/local/opt/krb5/lib/pkgconfig"

导出路径变量 LDFLAGS 和 CPPFLAGS

export LDFLAGS="-L/usr/local/opt/krb5/lib"
export CPPFLAGS="-I/usr/local/opt/krb5/include"

重新安装路边宝石

gem uninstall curb
gem install curb

我当前系统设置的旁注:

Mac OS Catalina 10.15.3

我的系统上安装了 anaconda3,尽管我使用以下命令禁用了它:

conda config --set auto_activate_base false


推荐阅读