简体   繁体   中英

Rails 5 console needs readline 6 on macOS Sierra

I have only readline 7 installed and I can't find a single way to install version 6 on macOS Sierra. This is the error when trying to run rails c :

/Users/akashagarwal/.rvm/gems/ruby-2.3.0@global/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb:293:in `require': dlopen(/Users/akashagarwal/.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/akashagarwal/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle Reason: image not found - /Users/akashagarwal/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle

I had a similar issue and solved it with:

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

source: https://github.com/rails/rails/issues/26658

一个对我有用的更好的答案:

rbenv install -f 2.2.3 && RBENV_INSTALL=2.2.3 gem pristine --all

I had the same error and this worked for me.
Add gem 'rb-readline' in your Gemfile and bundle install

And just type bundle exec rails c

Jim Meyer wrote a good answer, but an even better blog post.

Specifically this is what should be done given that you use rbenv and maybe also homebrew to install readline: (cut from Jim's blog post for posterity)

> xcode-select --install
[... popup dialog launches and you do the install dance ...]
> brew update && brew upgrade
[... many package defs update and upgrade ... ]
> for i in `rbenv versions --bare|xargs`; do rbenv install -f $i && RBENV_VERSION=$i gem pristine --all; done
[... much building of ruby and gem native extensions for each installed ruby version ...]

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM