私は最近、gem(Ruby-debug-ide
)をインストールしたかったので、Ruby 2.1.2のように再インストールしました。
Sudo rvm reinstall 2.1.2 --disable-binary --with-gcc=gcc-4.2
それ以来、次のエラーのため、bundle exec Rails c
を使用してコンソールをロードできません。
/Users/ohad/.rvm/gems/Ruby-2.1.2@aaa/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require': dlopen(/Users/ohad/.rvm/rubies/Ruby-2.1.2/lib/Ruby/2.1.0/x86_64-darwin13.0/readline.bundle, 9): Library not loaded: @@HOMEBREW_PREFIX@@/opt/readline/lib/libreadline.6.dylib (LoadError)
Referenced from: /Users/ohad/.rvm/rubies/Ruby-2.1.2/lib/Ruby/2.1.0/x86_64-darwin13.0/readline.bundle
brew uninstall readline
とbrew install --build-from-source readline
を試しましたが、うまくいきましたが、私の問題は解決しませんでした。
今日これを走って、それを解決するために私がやった:
brew rm -f readline
brew install readline
brew link readline --force
それが役に立てば幸い。
編集:最近この問題に遭遇しました(Rubyのダウングレード後)。
ln -s /usr/local/opt/readline/lib/libreadline.dylib /usr/local/opt/readline/lib/libreadline.7.dylib
回答よりも多くの賛成票で受け入れられた回答に対するコメントに基づいて、これは最も人気のあるソリューションのようです。
Rails 4.2.6はlibreadline
ではなくlibreadline.6
を探していました。したがって、シンボリックリンクを作成する必要があります。
ln -s /usr/local/opt/readline/lib/libreadline.dylib \
/usr/local/opt/readline/lib/libreadline.6.dylib
これがまだ立ち往生している他の人を助けることを願っています!
Rubyを再インストールすることで同じ問題を解決できました。 Homebrew側では、readlineを(ソースからでも)再インストールしても解決しませんでした。
私はRVMを使用しているので、これは私のためにそれをソートしました:
rvm reinstall 2.3.1
Homebrewは最近、他のパッケージのためにreadline v7を導入したかもしれないと思う。
@mauro_otoの投稿に対する私のコメントに対して多くの肯定的なフィードバックを得た後、これを回答として投稿すると思いました。
私のために
cp /usr/local/opt/readline/lib/libreadline.dylib /usr/local/opt/readline/lib/libreadline.6.dylib
トリックをしました。 Rails 4.2.6はlibreadlineではなくlibreadline.6を探していました。正直に言うとシンボリックリンクしているはずです。したがってln -s /usr/local/opt/readline/lib/libreadline.dylib /usr/local/opt/readline/lib/libreadline.6.dylib
の方が適切です。これがまだ立ち往生している他の人を助けることを願っています!
gem 'rb-readline'
をGemfile
に追加すると、この問題が修正されました。 https://github.com/ConnorAtherton/rb-readline を参照してください。
これらのすべてが私にとってはうまくいきませんでした。 osx sierraを使用しています。これは私のために働いたもの。
ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib
これが誰かに役立つことを願っています。
私のENV:Ruby:2.2.1、Rails:4.2.1、macOS Sierra 10.12.4;
以下のコマンドは、私と同僚のために機能します:
ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib
Homebrewを使用したOSXでは、アクティブにするreadlineバージョンを指定できます。例えば.
brew switch readline 6.3.8
(おそらく/usr/local/Cellar/readline/
にインストールされます)
これは私の問題を解決しました:
Libreadline。{version} .dylibを、エラーが発生しているバージョンに置き換えます。
ln -s /usr/local/opt/readline/lib/libreadline.dylib /usr/local/opt/readline/lib/libreadline.7.dylib
同様の問題が発生していましたが、バージョンが更新されました。私が持っていたエラーは:
dlopen(/Users/juanjo/.rvm/rubies/Ruby-2.5.3/lib/Ruby/2.5.0/x86_64-darwin18/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib (LoadError)
Referenced from: /Users/juanjo/.rvm/rubies/Ruby-2.5.3/lib/Ruby/2.5.0/x86_64-darwin18/readline.bundle
Reason: image not found - /Users/juanjo/.rvm/rubies/Ruby-2.5.3/lib/Ruby/2.5.0/x86_64-darwin18/readline.bundle
重要な部分はLibrary not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib
見つめている /usr/local/opt/readline/lib/
私がインストールしたのを見たlibreadline.8.dylib
、7ではありません。
他の答えに導かれて私の問題を解決するために、私は次のことをしなければなりませんでした:
ln -s /usr/local/opt/readline/lib/libreadline.8.dylib /usr/local/opt/readline/lib/libreadline.7.dylib
言い換えると: ln -s /.../[libreadline you have] /.../[libreadline you need]
。