2

I can not access the rails console , I'm working with MAC Mojave. I have tried to solve with the following alternatives, but the same error still appears.

https://gist.github.com/wbotelhos/46c37807c834ccb5bb406e426adfe347

if I open a new terminal and write ruby ​​-v, ruby ​​appears 2.3.7 but some time ago, I deleted this version of ruby.

but I can not erase it definitively, since I open a new terminal and version 2.3.7 keeps appearing.

    rails cRunning via Spring preloader in process 42876
    /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require': dlopen(/Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/2.4.0/x86_64-darwin18/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib (LoadError)
      Referenced from: /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/2.4.0/x86_64-darwin18/readline.bundle
      Reason: image not found - /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/2.4.0/x86_64-darwin18/readline.bundle
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `block in require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/2.4.0/irb/completion.rb:10:in `<top (required)>'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `block in require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/commands/console/console_command.rb:2:in `<top (required)>'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `block in require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:82:in `block (2 levels) in lookup'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:78:in `each'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:78:in `block in lookup'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:77:in `each'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:77:in `lookup'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command.rb:68:in `find_by_namespace'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command.rb:42:in `invoke'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/commands.rb:16:in `<top (required)>'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `block in require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/Desktop/Proyectos/first_web/bin/rails:9:in `<top (required)>'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:286:in `load'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:286:in `block in load'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:286:in `load'
            from /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:59:in `require'
            from /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:59:in `require'
            from -e:1:in `<main>'
    Adrians-MacBook-Pro:first_web adriantapia$ rails c
    Running via Spring preloader in process 43094
    /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require': dlopen(/Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/2.4.0/x86_64-darwin18/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib (LoadError)
      Referenced from: /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/2.4.0/x86_64-darwin18/readline.bundle
      Reason: image not found - /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/2.4.0/x86_64-darwin18/readline.bundle
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `block in require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/2.4.0/irb/completion.rb:10:in `<top (required)>'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `block in require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/commands/console/console_command.rb:2:in `<top (required)>'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `block in require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:82:in `block (2 levels) in lookup'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:78:in `each'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:78:in `block in lookup'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:77:in `each'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command/behavior.rb:77:in `lookup'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command.rb:68:in `find_by_namespace'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/command.rb:42:in `invoke'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/railties-5.1.6.1/lib/rails/commands.rb:16:in `<top (required)>'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `block in require'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:292:in `require'
            from /Users/adriantapia/Desktop/Proyectos/first_web/bin/rails:9:in `<top (required)>'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:286:in `load'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:286:in `block in load'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:258:in `load_dependency'
            from /Users/adriantapia/.rvm/gems/ruby-2.4.4/gems/activesupport-5.1.6.1/lib/active_support/dependencies.rb:286:in `load'
            from /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:59:in `require'
            from /Users/adriantapia/.rvm/rubies/ruby-2.4.4/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:59:in `require'
            from -e:1:in `<main>'


My RVM: rvm list
   ruby-2.4.1 [ x86_64 ]
=* ruby-2.4.4 [ x86_64 ]
   ruby-2.5.1 [ x86_64 ]

ruby -v :
    ruby 2.4.4p296 (2018-03-28 revision 63013) [x86_64-darwin18]

rails -v:
Rails 5.1.6.1
kingninja
  • 35
  • 1
  • 5
  • I added this gem (gem 'rb-readline', '~> 0.5.3') to the development group and it was solved, but this problem happens in new projects and I would have to add this gem always, how can I solve it definitively? – kingninja Mar 07 '19 at 14:50

3 Answers3

2

You probably compiled your Ruby version against libreadline.7.dylib but updated to libreadline.8.dylib recently – for example by running brew upgrade.

Now Ruby complains that it doesn't find libreadline.7.dylib anymore in the /usr/local/opt/readline/lib/ folder.

To fix this issue navigate to that folder and list its content

$ cd /usr/local/opt/readline/lib/
$ ls -l

You will probably see something like this:

... libreadline.8.0.dylib
... libreadline.8.dylib -> libreadline.8.0.dylib

Then just create a new symlink for the missing old version:

$ ln -s libreadline.8.0.dylib libreadline.7.dylib

The first file is the one that is existing on your computer and was listed by ls -l. And the second file is one that is missing which was named in the error message.

spickermann
  • 100,941
  • 9
  • 101
  • 131
2

It can also be possible because of the spring issue. Try restarting it by using the following commands:

bin/spring stop

bin/spring start

Sushant
  • 377
  • 4
  • 8
0

If you're using RVM you can set the ruby version to each specific ruby project. You go to the project folder, then type:

rvm list
#will return list of all installed rubies and which one you're currently using, for example:

   ruby-2.1.10 [ x86_64 ]
   ruby-2.1.2 [ x86_64 ]
   ruby-2.3.4 [ x86_64 ]
   ruby-2.3.5 [ x86_64 ]
   ruby-2.3.6 [ x86_64 ]
   ruby-2.3.7 [ x86_64 ]
=* ruby-2.4.1 [ x86_64 ]
   ruby-2.5.1 [ x86_64 ]
   ruby-2.6.1 [ x86_64 ]

Then to select which ruby version you want for this project:

rvm use 2.6.1 # will set RVM to use this version locally from this directory

To set the default RVM version on any new project or where a local version has not been set:

rvm use 2.6.1 --default

In your Rails project's Gemfile you can also set the ruby version, you should have a line like:

ruby '~> 2.6.1'

For each ruby version you'll likely need to run this at least once on a rails project if it's the first time you're using it with that ruby version to install gems for that project:

bundle install

For more information see How to set default Ruby version with RVM?

lacostenycoder
  • 10,623
  • 4
  • 31
  • 48