Linuxにrbenvとruby-buildでRuby1.8.7を入れてみた

今日の人気記事

  1. SMART ICOCAを発行して使ってみたので良い点悪い点をまとめてみた
  2. SMART ICOCAの退会(払いもどし)をしてみたので注意すべきことをまとめておく
  3. 栃木県益子町にある大川戸ドライブインで流しそうめんを楽しんでみた
  4. Xiaomi Mi Band 3を使ってみたので残しておく
  5. 円錐形ドリッパーを買ってみたので台形(扇形)ドリッパーとの違いをまとめてみた
  6. 皿とレンジがあれば良い スライスチーズでおつまみクッキング
  7. イオンスクエアメンバーIDがロックしたのでカスタマーサービスに電話して対処してみた
  8. BIC SIMカウンターでSIMカードをmicro SIMからnano SIMへサイズ変更してみたので残しておく
  9. 使わなくなったスマホケース それリサイクル出来ますよ
  10. 香料なしコーヒーだけ UCC BLACK COLD BREWを飲んでみた
この記事の読了時間: 455

ごきげんよう

rbenvとruby-buildでRuby1.8.7を入れる必要があったのでメモとして残しときます。

まずは、rbenvとruby-buildをインストールしてしまいましょう。
rbenvは複数バージョンを切り替えられるもので、ruby-buildはそのプラグインです。
今回gitを使うので先にインストールしておきましょう。

$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ source ~/.bash_profile
$ rbenv --version

これで環境が整います。最後のコマンドでバージョンが出ればOK。
ChromebookにLinuxを入れて行っている場合は.bash_profileではなく.bashrcのほうが良いかもしれません。

ちなみにruby-buildを直接コマンドから使いたい場合は

$ cd ruby-build
$./install.sh

とruby-build内のinstall.shを実行すれば使えるようになります。

次に、Rubyの1.8.7を入れますが、

$ rbenv install -l

これでインストールできるバージョンが出てきます。
この中で1.8.7-p375を入れてみます。
なんか、subversionとautoconfが入ってないと怒られるので入れとく。

$ rbenv install 1.8.7-p375
$ rbenv global 1.8.7-p375

これで使えるようになる。
ここでエラーになる場合は、こやつはバージョンによってOpenSSL周りで問題が起きているらしく対策が必要。

Index: ext/openssl/ossl_pkey_ec.c
===================================================================
--- ext/openssl/ossl_pkey_ec.c  (revision 41807)
+++ ext/openssl/ossl_pkey_ec.c  (revision 41808)
@@ -762,8 +762,10 @@
                 method = EC_GFp_mont_method();
             } else if (id == s_GFp_nist) {
                 method = EC_GFp_nist_method();
+#if !defined(OPENSSL_NO_EC2M)
             } else if (id == s_GF2m_simple) {
                 method = EC_GF2m_simple_method();
+#endif
             }

             if (method) {
@@ -817,8 +819,10 @@

             if (id == s_GFp) {
                 new_curve = EC_GROUP_new_curve_GFp;
+#if !defined(OPENSSL_NO_EC2M)
             } else if (id == s_GF2m) {
                 new_curve = EC_GROUP_new_curve_GF2m;
+#endif
             } else {
                 ossl_raise(rb_eArgError, "unknown symbol, must be :GFp or :GF2m");
             }

rbenv を利用した ruby のインストール中にエラーとなる場合の対応 – Qiita
こちらを参考にさせてもらった。

これをpatch.diffなりに保存。

$ cat patch.diff | rbenv install --patch 1.8.7-p375
$ rbenv global 1.8.7-p375

こいつをやるとインストール出来る。これで1.8.7-p375になる。
他のバージョンでも同じようにやってrbenv globalすれば切り替わる。

それでは ごきげんよう

source:
オブジェクト指向スクリプト言語 Ruby

sstephenson/rbenv · GitHub

sstephenson/ruby-build · GitHub

rbenv を利用した ruby のインストール中にエラーとなる場合の対応 – Qiita

RSS/feedlyはこちら

follow us in feedly


プッシュ通知受信はこちら



Twitterアカウントはこちら




コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

This site uses Akismet to reduce spam. Learn how your comment data is processed.