Подтвердить что ты не робот

Консоль Rails не загружается

При попытке запустить rails console я продолжаю получать следующую ошибку

Users/rigelstpierre/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `require': dlopen(/Users/rigelstpierre/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin11.4.0/readline.bundle, 9): Library not loaded: /Users/rigelstpierre/.rvm/usr/lib/libreadline.6.2.dylib (LoadError)
  Referenced from: /Users/rigelstpierre/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin11.4.0/readline.bundle
  Reason: image not found - /Users/rigelstpierre/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin11.4.0/readline.bundle
    from /Users/rigelstpierre/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `<top (required)>'
    from /Users/rigelstpierre/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.2/lib/rails/commands/console.rb:3:in `require'
    from /Users/rigelstpierre/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.2/lib/rails/commands/console.rb:3:in `<top (required)>'
    from /Users/rigelstpierre/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.2/lib/rails/commands.rb:38:in `require'
    from /Users/rigelstpierre/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.2/lib/rails/commands.rb:38:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'

Любые мысли? Приложение Rails 3.2.2

4b9b3361

Ответ 1

Возможно, существует несколько версий readline.

Попробуйте следующее:

brew link readline --force

Ответ 2

У меня было пару дней назад. Вы можете попытаться переустановить/перекомпилировать свой рубин. В моем случае проблема возникла при обновлении от El Capitan до Sierra

поэтому в зависимости от вашего менеджера:

РВМ

rvm reinstall 2.3.0

Rbenv

rbenv uninstall 2.3.0
rbenv install 2.3.0

ASDF

asdf uninstall ruby 2.3.0
asdf install ruby 2.3.0

Ответ 3

Это потому, что установлено несколько версий readline (может быть, потому, что вы недавно запустили brew update). То, что сказал Рон, прав. Вы можете исправить это, запустив brew link readline или brew link readline --force.

Если он по-прежнему не работает, найдите, какая строка readline и перейдите в папку readline, а затем удалите версию, которая вам не нужна (или те, которые установлены при запуске обновления brew). Затем запустите brew link readline снова.

Ответ 4

Для меня на macOS sierra, brew link readline или brew link readline --force не работает, и я запустил brew update в последнее время. Но rails console работает после выполнения следующих действий:

rvm reinstall 2.3.1

Ответ 5

В другом месте ни один из вариантов пересоединения не работал. Было предложено повторить установку rvm (что кажется обременительным). Однако простое добавление readline в Gemfile работает для меня:

gem 'rb-readline'

Ответ 6

После переустановки readline я все еще не смог загрузить rails console.

Однако переустановка ruby сделала это для меня.

rvm reinstall 1.9.3

PS: Я на OSX El Capitan

Ответ 7

В macOS Sierra я столкнулся с той же проблемой, что и доморощенные и libreadline, Я пытался сделать brew link readline, brew link readline --force и brew update но все напрасно, тогда я нашел другое решение, которое решило мою проблему.

Была проблема связи libreadline, требуемая homebrew, была отсоединена и не смогла связать brew commands

Создание символической ссылки решило мою проблему.

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

Попробуйте создать символическую ссылку. Надеюсь, это решает вашу проблему.