2016-10-05 20 views
7
/Users/parkerharris/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/irb/completion.rb:10:in `require': dlopen(/Users/parkerharris/.rvm/rubies/ruby-2.3.0/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/parkerharris/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle 
    Reason: image not found - /Users/parkerharris/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle 
    from /Users/parkerharris/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/irb/completion.rb:10:in `<top (required)>' 
    from /Users/parkerharris/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/console.rb:3:in `require' 
    from /Users/parkerharris/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/console.rb:3:in `<top (required)>' 
    from /Users/parkerharris/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:138:in `require' 
    from /Users/parkerharris/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:138:in `require_command!' 
    from /Users/parkerharris/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:68:in `console' 
    from /Users/parkerharris/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:49:in `run_command!' 
    from /Users/parkerharris/.rvm/gems/ruby-2.3.0/gems/railties-5.0.0.1/lib/rails/commands.rb:18:in `<top (required)>' 
    from bin/rails:4:in `require' 
    from bin/rails:4:in `<main>' 

To jest mój ekran błędu po próbie wykonania polecenia. Próbowałem odinstalować i ponownie zainstalować readline, a to nie pomogło. Uczę się tylko szyn i nie wiem w 100%, co robię (po prostu podążając za przewodnikiem), więc ten typ błędu minął moje zrozumienie. Dzięki!Nie można wykonać polecenia konsoli Railsowej Ruby

+0

Jaka była rzeczywista komenda próbowałeś uruchomić? czy to była 'konsola szynowa'? –

+0

yes @ LukaKerrΔ było. –

Odpowiedz

13

Może nie być spokrewniona, ale dziś przydarzyło mi się to samo.

Dziś rano miałem sprawnie działający Ruby 2.3.1. W moim przypadku Ruby została skompilowana i zainstalowana przez Ruby-build i zarządzana przez rbenv.

W pewnym momencie dzisiaj zaktualizowany Homebrew z

brew cleanup --prune=30 
brew update 
brew upgrade 

jednego ze wzorów modernizowanych było readline 7,0:

$ brew info readline 
... 
/usr/local/Cellar/readline/7.0 (45 files, 2M) 
    Poured from bottle on 2016-10-05 at 08:09:22 

Wkrótce posłowia odkryłem, że moje wsparcie readline Ruby stała się całkowicie zepsuty. Widziałem błędy takie jak twoje:

/Users/mbrictson/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/pry-0.10.4/lib/pry/config/default.rb:151:in `require': dlopen(/Users/mbrictson/.rbenv/versions/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/mbrictson/.rbenv/versions/2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle 
    Reason: image not found - /Users/mbrictson/.rbenv/versions/2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle 
    from /Users/mbrictson/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/pry-0.10.4/lib/pry/config/default.rb:151:in `lazy_readline' 

Rozwiązaniem było całkowicie usunąć instalację Ruby i skompilować go:

rm -rf ~/.rbenv/versions/2.3.1 
rbenv install 2.3.1 

wiem używasz RVM i nie rbenv, ale chyba rozwiązanie w swojej Przypadek jest podobny: usuń instalację Ruby i zainstaluj ją ponownie za pomocą rvm.

+1

To dziwne, to samo zaczęło się dziać ze mną nigdzie dziś rano. Ta sama wersja Ruby (2.3.1) i używanie rbenv. – maml

+0

Przygotuj się, aby odczekać chwilę, jeśli uruchomisz 'brew cleanup --prune = 30'. –

1

Coś jest nie tak z twoim rvm, nie wydaje się być związany z szynami. Sprawdź, czy jest poprawnie zainstalowany.

Upewnij się, że zostały sprawdzone przesłanki RVM na https://rvm.io/rvm/prerequisites

i że instalacja działa prawidłowo, na przykład

(od: https://rvm.io/rvm/install) Jeśli instalacja i konfiguracja zakończyły się powodzeniem, RVM powinien teraz zostać załadowany po każdym otwarciu nowej powłoki. Można to przetestować, wykonując następujące polecenie, które powinno wyprowadzać rvm, jak pokazano poniżej.

$ type rvm | head -n 1 
rvm is a function 

Sprawdź na komputerze Mac czy readline zostały właściwie opracowane, lub spróbować zrobić czystą instalację ruby-2.3.0 ponownie

Można sprawdzić na RVM dotyczące pakietu i autolibs na: https://rvm.io/packages/readline

0

To samo przydarzyło mi się, gdy nieświadomie uruchomiłem rvm requirements po zainstalowaniu ruby ​​2.3.1.

rvm uninstall 2.3.1 
rvm install 2.3.1 

Powyżej poprawiono.

1

Miałem podobny problem. Moja Ruby została zainstalowana przy użyciu HomeBrew. W moim przypadku musiałem odinstalować Ruby; zainstaluj/połącz libyaml; a następnie zainstaluj ponownie ruby.

brew uninstall ruby 
brew link libyaml 
brew install ruby 
4

Naprawdę szybkim i szybkim rozwiązaniem jest dodanie rb-readline do Gemfile. (W przypadku, gdy inne rozwiązania nie działają i chcesz przejść dalej, dopóki nie masz czasu rozwiązać problemu.) Wiem, że to nie jest idealne, ale jest to działające rozwiązanie.)

W pliku gem:

group :development do gem 'rb-readline' end

Teraz wystarczy zainstalować pakiet. Znalazłem to rozwiązanie w Opcji 4 pod adresem (https://github.com/guard/guard/wiki/Add-Readline-support-to-Ruby-on-Mac-OS-X) Mam nadzieję, że to pomoże.

0

Uruchamianie z wiersza poleceń pracował dla mnie:

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

od github