気軽に楽しくプログラムと遊ぶ

自分が興味があってためになるかもって思う情報を提供しています。

Rubyのインストール時のreadlineエラーにおける対処

Rubyのインストール時に以下のエラーが出力した場合の対処

エラー内容
readline.c:1688: error: for each function i
原因

openssl, readlineが古いバージョン、またはrbenvがこれらを見つけられない。

対処法

以下のコマンドを実行

RUBY_CONFIGURE_OPTS="--with-readline-dir=$(brew --prefix readline) --with-openssl-dir=$(brew --prefix openssl)" rbenv install 2.0.0-p247

→ビルドオプションとhomebrew経由におけるインストールディレクトリを提供する。
これによりopenssl, readlineの読み込みが可能となり?rubyのインストールが可能となった。いまいち理解できていない。。

余談:rubyをアンインストールすると、なぜかrails、bundlerまでアンインストールされ、再インストールするはめになった。。なぜだ。。