私はRubyの環境構築がめっちゃ苦手で数年前に一度挫折しています。
今回成功した構築より以前、macOSをMojaveにバージョンアップする前のHigh Sierraでは泣きながらPCに向かっていたほどです。しかしながらどうにかクリアすることができました。
苦労した原因は、当時の私はPython学習も並行していて、.bash_profileの記述がめちゃくちゃになってしまっていたこと。
基礎知識がないままググって出てきた情報を手当り次第試していたらこんなことになってしまいました。。
多分私ほどできない人も珍しいのではないでしょうか。
その後Mojave上で正常に環境構築し、Railsアプリを制作していたのですが、「マシンの挙動が遅いなあ、、、」となり、またクリーンインストールしなおして今回の構築に至ります。ですので同じような状況の方にはお役に立てるかと思います。
いろいろと遠回りした甲斐あって初心者からちょっとだけレベルアップしました。ネット上の先人の知識を駆使させていただき、うまいこと環境構築に成功したので書き留めておきます。
前提条件
今回目的のRuby 2.6.1をインストールするにあたり前提の条件を書いておきます。
- macOSはMojave 10.14.6
- 上記OSをクリーンインストール直後
- ruby 2.3.7(最初から入っていた)
- Rails → なし
- Homebrew → なし
- Xcode → xcode-select version 2354
- rbenv → なし
- ~/.bash_profile → 何も触っていない
Rubyのバージョン確認
Macのアプリからターミナルを開き、ruby -vでバージョンを確認します。
$ ruby -v
Macの場合は標準で何かしらのバージョンのRubyがインストールされているはずです。
今回使っているMojave 10.14.6のデフォルトのバージョンはruby 2.3.7でした。
Homebrewをインストール
バージョン管理のためのHomebrewをインストールします。
基本的にHomebrew公式サイトのURLをコピペするのが吉です。
Homebrewの扱いに関してはこちらの方の記事がめっちゃ参考になりました。
私がインストールした時点での記述を掲載しておきます。
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
私の環境では上記コマンドを入れ、インストールの途中で「Command Line Toolsをインストールしてね!」って表示が出たので、勧められるがままCommand Line Toolsをインストールしました。
==> Installation successful!
↑この表示が出たらインストール成功です!
インストールできたらbrew doctorで調べる
次に、さきほどのHomebrewが正常にインストールされているか確認します。
初心者はインストールされているかのエラー表示を探すのが苦手だったりするので、めんどくさいですがなにかを入れたときはちゃんとインストールされているかを毎回確認するのが吉です。
で、Homebrewの確認コマンドがこちら。
$ brew doctor
↑これを打ち込めば使える状態になっているかがわかります。
Your system is ready to brew.
↑が表示されたら問題なく使えます。
rbenvをインストール
次にrbenvを入れていきます。
こいつを使うと使いたいrubyのバージョンを指定できます。めっちゃ便利な子です。
こちらの方の記事がわかりやすかったです。qiita最高。
当記事を読みながらインストールされている方はすでにHomebrewは最新版かと思いますので、
$ brew install rbenv
でrbenvをインストールしていきます。
rbenvのバージョンを確認する
これまた面倒ですがrbenvがちゃんと正常に入っているか確認します。
$ rbenv --version
rbenv 1.1.● ←●部分は数字
のように数字が3つ並んでいれば大丈夫です。私の環境では1.1.2でした。
rbenvでインストール可能なrubyのバージョンを確認
rbenvで使いたいrubyのバージョンを確認します。
$ rbenv install —list
今回はruby 2.6.1を使いたいので、該当のバージョンがあることを確認。
使いたいバージョンのrubyをインストール
ではインストールしていきましょう。
$ rbenv install 2.6.1
Rubyのインストールには結構時間がかかるので、その間にトイレ休憩などをはさみましょう。
はじめてコンソールを触ると集中力が非常に途切れやすく、ついついエラー表示等を見逃しがちです。(私はこれでした)
インストールできたらバージョンを確認する
$ rbenv versions
成功するとこのように表示されます。
system * 2.6.1 (set by /Users/●ユーザー名●/.rbenv/version)
ですが、多分クリーンインストール直後では正常に表示されないと思いますので、下記を進めていきます。
使いたいrubyのバージョンに切り替える
rubyのバージョンの仕様はディレクトリ単位になっているようです。
つまり、「ここのディレクトリではこのバージョン使うよ!」みたいな感じらしいです。
ですので、全体で統一したいときはこのglobalコマンドを使います。
$ rbenv global 2.6.1
.bash_profileを作って記述
私が陥って時間を溶かしまくったのがこの.bash_profileの記述です。
こちらは「pathを通す」などと表現されますが、要するにプログラムにたどり着くためのショートカットみたいなものだと考えていていいのではないかと思います。
今回は
eval "$(rbenv init -)"
↑を.bash_profileの中に記述します。
こちらの方の記事が非常にわかりやすかったです。
$ touch ~/.bash_profile
↑.bash_profileが無い方はこれで新規作成できます。
たいていのMacユーザーの方はこの.bash_profileを自分のユーザー名のディレクトリ(家マーク)の場所を使うと思います。
この場所がわかりずらく、しかも通常Finderからは見えない隠しファイルですので一度確認してみましょう。
Finderから家マークを選択します。
すると、アプリケーションとかダウンロードとかのフォルダが見えてくるかと思います。
ここで、キーボードのcommand + shift + .(ドット)のキーを同時押しします。
すると、半透明のファイルが表示されます。
基本的に.bashファイル等はターミナルから触ったほうがいいかと思うのですが、初心者はイメージしずらいと思うので一度ファイルの置き場所を確認しておいて損はないでしょう。
※下手に触ると危険なファイルが多いので確認したらもう一度command + shift + .(ドット)で戻しておきましょう。
では戻って記述していきます。
記述にはvimコマンドを使います。
$ vim ~/.bash_profile
ファイルが開いたら、キーボードの「i」を押してファイルへの入力可能状態にします。
コピーした「eval “$(rbenv init -)”」を貼り付けます。
「esc」キーを押して「:wq」と入力しreturnキーを押すと内容を記録してvimを終了できます。
記述したら一度ターミナルを閉じて(ターミナルを終了させる)、もう一度起動します。
すると.bash_profileに書いたものが適用され、rbenv versions
コマンドでバージョンを表示させたときに今回使いたい2.6.1に変更されます。
以上がmacsOS Mojave 10.14.6のクリーンインストール直後からのruby 2.6.1インストールになります。
初心者の方の参考になれば嬉しいです。