[ruby-on-rails] readline 오류로 인해 “rails 콘솔”을 실행할 수 없습니다.
rails console
이 오류로 인해 실행할 수 없습니다 .
localhost:TwitterForZombies wiz$ rails c
/Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `require': dlopen(/Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib (LoadError)
Referenced from: /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle
Reason: image not found - /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle
from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `<top (required)>'
from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands/console.rb:3:in `require'
from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands/console.rb:3:in `<top (required)>'
from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:38:in `require'
from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:38:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
homebrew를 통해 readline을 설치했습니다. rvm 대신 rbenv를 계속 사용하고 싶습니다.
제 질문을 읽어 주셔서 감사합니다.
답변
최근에 homebrew와 libreadline.7.x.dylib / libreadline.6.x.dylib에서 같은 문제가 발생했습니다.
다음을 실행하여 해결했습니다.
ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib
출처 : https://github.com/rails/rails/issues/26658
답변
Homebrew는 훌륭하지만 가끔 다른 움직이는 부분과 잘 어울리지 않습니다.
A는 brew update && brew upgrade
에서 가져온 libreadline.7.x.dylib
자동으로 제거하는 동안 libreadline.6.x.dylib
루비는 여전히 의존 하였다.
문제를 해결하는 더 영리한 방법이있을 수 있지만 무차별 대입이 저에게 효과적이었습니다.
$ rbenv uninstall 2.3.1
$ rbenv install 2.3.1
$ cd /path/to/my/app
$ bundle
위의 내용은 rbenv ruby-build
와 물론 존재한다고 가정합니다 bundler
. 2.3.1
사용중인 루비 버전으로 교체하십시오 .
다른 홈브류 관리 라이브러리에서도 유사한 문제가 발생할 수 있습니다 (예 : 이에 대한 내 답변 참조 ).
답변
저는 OSX, ruby2.3.0, rails5에 있습니다. 추가 gem 'rb-readline'
내에 Gemfile
고정이 문제를 해결합니다.
답변
Ruby 2.1.0과 rails 4.0에서 같은 오류가 발생했습니다. 많은 것을 검색하고 시도한 후에 마침내 잘 작동합니다.) 다음은 내가 한 일입니다.
rvm cleanup all
rvm autolibs enable
rvm install 2.1.0
다른 방법 :
brew update
brew uninstall readline
brew install readline
autolibs 명령은 RVM이 모든 종속성을 강제로 설치하므로 걱정할 필요가 없습니다.
도움이 되었기를 바랍니다.
답변
Sachin이 암시했듯이 readline을 설치 한 다음 Ruby를 다시 설치하는 것이 이상적인 접근 방식이지만 rbenv의 세부 사항은 약간 다릅니다. 파일 경로가 주어지면 Mac을 사용하는 것 같으므로 다음이 도움이 될 것입니다.
brew install readline ruby-build
env CONFIGURE_OPTS=--with-readline-dir=`brew --prefix readline` rbenv install 1.9.3-p286
이것은 루비 빌드 위키 와 빠른 Google 검색 에서 가져 왔습니다 .
답변
Mac, El Captain
버전을 사용하면 다음 을 수행하는 것만으로도 고칠 수 있습니다.
rvm reinstall your_ruby_version
(처럼 rvm reinstall ruby-2.3.1
)
이것이 도움이되기를 바랍니다. 행운을 빕니다!
답변
github 사용자 @enderahmetyurt에서 가져 왔습니다 (이것은 나를 위해 일한 유일한 솔루션입니다).
해결 방법 : 추가 gem 'rb-readline'
에 Gemfile에 개발 그룹 및 설치 번들 .
어리석은 “readline”오류에 대한 가장 쉬운 솔루션입니다.