由于此错误,我无法执行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>'
我已经通过自制软件安装了readline。我想继续使用rbenv而不是rvm。
感谢您阅读我的问题。
发布于 2016-10-21 18:47:37
我最近在使用自制软件和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
发布于 2016-10-06 14:28:28
自制软件很棒,但有时它与其他一些可移动的部分不能很好地配合。
一个brew update && brew upgrade
引入了libreadline.7.x.dylib
,同时自动删除了ruby仍然依赖的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
替换为您正在使用的ruby的任何版本。
请注意,不同的自制托管库(see my own answer to this, for example)可能会出现类似的问题
发布于 2016-12-30 04:16:51
我用的是OSX,ruby2.3.0,rails5。将gem 'rb-readline'
添加到我的Gemfile
解决了这个问题。
https://stackoverflow.com/questions/16756287
复制相似问题