$rails console で readlineねぇよ と言われたときの解決方法

■現象
% rails console

  /usr/local/Cellar/ruby/2.3.1/lib/ruby/2.3.0/irb/completion.rb:10:in `require': dlopen(/usr/local/Cellar/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: /usr/local/Cellar/ruby/2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle
  Reason: image not found - /usr/local/Cellar/ruby/2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle
 from /usr/local/Cellar/ruby/2.3.1/lib/ruby/2.3.0/irb/completion.rb:10:in `'
 from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/console.rb:3:in `require'
 from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/console.rb:3:in `'
 from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:138:in `require'
 from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:138:in `require_command!'
 from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:68:in `console'
 from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands/commands_tasks.rb:49:in `run_command!'
 from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.0.1/lib/rails/commands.rb:18:in `'
 from bin/rails:4:in `require'
 from bin/rails:4:in `
'

readlineの再インストールとかしてみたけど駄目。
で、たまたま英語でOSをSierraに上げたら、readline必要になったわ。という記事があったのでそれが解決策となった。
結局Linkを新たに張って解決した。

■解決策
% ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib

以下愚痴
MacでRuby環境を作っていて、何度もOSが変わったことにより動作してくれない。解決策がネットにあっても、OS違いで解決しない。
というのが何度も発生してる。

GemをUpdateしたら治ることが多いけど、正直Windowsでの開発環境の構築と
比べると面倒が多い気がするんよね〜。

なんかOSが最新になるたび何かしら引っかかる感じで…Windowsもそこは一緒なんだけど…(-_-)

0 件のコメント :

コメントを投稿