IRB не загружает библиотеку libreadline - PullRequest
0 голосов
/ 22 января 2019

Пытался войти в irb, но внезапно начал получать эту ошибку. Пробовал переустанавливать brew readline и повторно связывать, но не повезло. Есть предложения?

/Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require': dlopen(/Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/x86_64-darwin17/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib (LoadError)
  Referenced from: /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/x86_64-darwin17/readline.bundle
  Reason: image not found - /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/x86_64-darwin17/readline.bundle
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/irb/ext/save-history.rb:12:in `<top (required)>'
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/irb/extend-command.rb:243:in `save_history='
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/irb/context.rb:92:in `initialize'
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/irb.rb:412:in `new'
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/irb.rb:412:in `initialize'
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/irb.rb:383:in `new'
    from /Users/asahmed/.rbenv/versions/2.4.2/lib/ruby/2.4.0/irb.rb:383:in `start'
    from /Users/asahmed/.rbenv/versions/2.4.2/bin/irb:11:in `<main>'

1 Ответ

0 голосов
/ 22 января 2019

Возможно, вы обновили что-то, что заменило библиотеку readline, и теперь необходимо восстановить ваш Ruby. Подобные вещи случаются нечасто с Homebrew , когда вы запускаете brew clean, и он удаляет устаревшую версию зависимости, от которой зависит неосознание одной из ваших сборок Ruby. Это потому, что Rbenv не может связаться с Homebrew, так как ему все еще нужна эта библиотека.

Обычно это легко исправить. Попробуйте:

rbenv install 2.4.2

Возможно, вы захотите потратить время на обновление до последней версии, которая на сегодняшний день составляет 2.5.3.

...