web-dev-qa-db-fra.com

Bibliothèque non chargée: /usr/local/opt/readline/lib/libreadline.6.dylib (LoadError)

J'essaie de courir mon Rails c mais pour une raison quelconque, j'obtiens cette erreur:

https://Gist.github.com/anonymous/166713e8cde860fb188a8dffb98a156

ᐅ Rails c
Running via Spring preloader in process 6609
/Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require': dlopen(/Users/zulhilmi/.rvm/rubies/Ruby-2.3.1/lib/Ruby/2.3.0/x86_64-darwin15/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib (LoadError)
  Referenced from: /Users/zulhilmi/.rvm/rubies/Ruby-2.3.1/lib/Ruby/2.3.0/x86_64-darwin15/readline.bundle
  Reason: image not found - /Users/zulhilmi/.rvm/rubies/Ruby-2.3.1/lib/Ruby/2.3.0/x86_64-darwin15/readline.bundle
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `block in require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require'
    from /Users/zulhilmi/.rvm/rubies/Ruby-2.3.1/lib/Ruby/2.3.0/irb/completion.rb:10:in `<top (required)>'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `block in require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/railties-4.2.6/lib/Rails/commands/console.rb:3:in `<top (required)>'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `block in require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/railties-4.2.6/lib/Rails/commands/commands_tasks.rb:123:in `require_command!'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/railties-4.2.6/lib/Rails/commands/commands_tasks.rb:58:in `console'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/railties-4.2.6/lib/Rails/commands/commands_tasks.rb:39:in `run_command!'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/railties-4.2.6/lib/Rails/commands.rb:17:in `<top (required)>'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `block in require'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require'
    from /Users/zulhilmi/hello_gold/cws/bin/Rails:8:in `<top (required)>'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:268:in `load'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:268:in `block in load'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /Users/zulhilmi/.rvm/gems/Ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:268:in `load'
    from /Users/zulhilmi/.rvm/rubies/Ruby-2.3.1/lib/Ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/zulhilmi/.rvm/rubies/Ruby-2.3.1/lib/Ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from -e:1:in `<main>’

Qu'est-ce que je devrais faire maintenant?

73
Zulhilmi Zainudin

Cette commande corrige mon problème:

ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib

OR

ln -s /usr/local/opt/readline/lib/libreadline.8.0.dylib /usr/local/opt/readline/lib/libreadline.7.dylib

J'ai écrit un résumé sur ce problème ici . Il y a beaucoup de gens qui partagent leurs solutions là aussi.

203
Zulhilmi Zainudin

Ajoutez cette gemme à votre Gemfile et lancez bundle install:

gem 'rb-readline'
54
zee

J'ai eu le même problème sous-jacent, qui s'est également produit après une mise à jour Mac OSX. Mon problème s'est manifesté en utilisant psql:

>> psql --help

dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib
  Referenced from: /usr/local/bin/psql
  Reason: image not found

OK, cela me dit donc qu'il attend libreadline.7.dylib dans /usr/local/opt/readline/lib. Lorsque je navigue dans ce répertoire, je peux voir que j’ai libreadline.8.0.dylib:

>> ls -l /usr/local/opt/readline/lib

total 1448
 libhistory.8.0.dylib
 libhistory.8.dylib -> libhistory.8.0.dylib
 libhistory.a
 libhistory.dylib -> libhistory.8.0.dylib
 libreadline.8.0.dylib
 libreadline.8.dylib -> libreadline.8.0.dylib
 libreadline.a
 libreadline.dylib -> libreadline.8.0.dylib

J'ai supposé qu'émuler libreadline.7.dylib en utilisant symlinking to libreadline.8.0.dylib pourrait résoudre mon problème:

>> ln -s /usr/local/opt/readline/lib/libreadline.8.0.dylib /usr/local/opt/readline/lib/libreadline.7.dylib

Ce qui fait que mon appel à psql fonctionne à nouveau, mais n'indique pas comment le problème a commencé.

16

J'ai installé à nouveau le Ruby de la même version. Ensuite, le message d'erreur a disparu. J'utilise macbook et homebrew.

$ rbenv install 2.3.8
rbenv: /Users/klee/.rbenv/versions/2.3.8 already exists
continue with installation? (y/N) y
Ruby-build: use openssl from homebrew
Downloading Ruby-2.3.8.tar.bz2...
-> https://cache.Ruby-lang.org/pub/Ruby/2.3/Ruby-2.3.8.tar.bz2
Installing Ruby-2.3.8...
Ruby-build: use readline from homebrew
Installed Ruby-2.3.8 to /Users/klee/.rbenv/versions/2.3.8
3
kangkyu

j'avais le même type de problème, mais c'était dû au fait que mon awk était lié à gawk conduisant à utiliser la mauvaise lib

cela a fonctionné pour moi

brew unlink gawk

2
Scott

Vient de recompiler Ruby version en utilisant readline mise à jour à partir de homebrew et cela fonctionne comme un charme.

rbenv install $(rbenv version-name)
2

Dans mon cas, readline était installé mais pas lié après une migration MacOS. Cette commande l'a corrigé:

brew link --force readline
0
Gustavo Salazar

il suffit de réinstaller Ruby 2.3.0 a corrigé mon problème sur les macos j’utilise rbenv rbenv install 2.3.0 a fait le tour

0
Sathish