Edited at

Mac rails環境構築

Macでrailsの環境構築をするときに色々なツールが何故必要なのか気になり、調べながら環境構築をしていく。


全体の流れ

1、Command Line Toolsをインストール

2,Homebrewをインストール

3,Homebrewを使い、rbenvとruby-buildというパッケージをインストール

4,rbenvとruby-buildを使ってrubyをインストール

5,gemコマンドでbundlerをインストール

6,gemコマンドでrailsをインストール


① Command Line Toolsをインストール

 一般的に、数多くあるunixベースで作成されたソフトウェアをインストールするにはGCC compiler(ジーシーシー コンパイラー)と呼ばれるものが必要で、ないとソフトウェアをインストールするときに不具合が起きる原因になります。なので、GCC compilerを持つcommand line toolsを先ず最初にインストールします。

ダウンロード(AppleIDが必要)

ページ先で自分のmacのOSバージョンにあうcommand line toolsをインストール


②Homebrewをインストール

 Homebrewは、オープンソースのソフトウェアパッケージ管理システムで、アップルのmacOS(オペレーティングシステム)にソフトウェアを簡単にインストールできるようにするものです。

つまり、初期状態で、アップルのmacOS(オペレーティングシステム)にインストールされていないが、あなたに必要なソフトウェアがあった場合、そのインストールを簡単にしてくれるものです。

たとえば、ある2つのソフトウェアをインストールするのにそれぞれにあったインストーラーが必要だとしたら、2つインストーラーが必要です。

それだと、10個のソフトウェアをインストールするのに10個のインストーラーが必要になり非常に面倒です。

また、ソフトウェアのアップデートをする場合にも。それぞれのインストーラーからしなければならなくなります。

しかし、Homebrewをインストールすると、それぞれのインストーラーが必要なくなり、さらに、アップデートも、brewコマンドと言われるHomebrewのコマンドを使うことで簡単にできるようになります。

以下でインストールしていきますが、インストールに時間がかかるので注意してください。

$ cd 

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

「Press RETURN to continue or any other key to abort」 と表示された行の後は、エンターキーを押してください。

その後Passwordを入力する画面になりますが、このパスワードは、ご自身のMacのパスワードを入力してください。

その後以下のコマンドを打ち込んでください。

$ sudo chown -R `whoami`:admin /usr/local/bin

これは/usr/local/bin以下のディレクトリの操作権限を現在ログインしているユーザーに変更しています。これをしないと操作をしようとするたび毎回パスワードを入れないといけなくなり面倒です。


③rbenvとruby-buildをインストール

 rbenvは、簡単にいうとrubyのバージョンを管理しやすくしてくれるものです。

というのも、rubyには色々なバージョンが存在し、それを切り替えて使い分ける必要があります。当初に使われたバージョンと違うもの使うと、エラーの原因になり、バージョン管理は慎重にしなければなりません。しかし、そのバージョン管理は手間の書かる作業であり、とても大変です。

つまり、それを解決してくれるのがrbenvです。

ruby-buildはrbenvのプラグインです。プラグインとは、機能の拡張をしてくれるものです。

この2つをセットでインストールすることにより、簡単にrubyをインストールでき、またバージョン管理も簡単になります。

$ brew install rbenv ruby-build

これから、「パスを通す」ということをしていきます。

「パスを通す」とはどういうことかというと、rbenvをどのディレクトリからも使用できるようするということです。

本来アプリケーションを利用するためにはそのアプリケーションの存在するディレクトリまで移動しなくてはいけません。

しかし、設定ファイルにコードを書き設定することで、どのディレクトリからもアプリケーションを呼び出せるようになります。

このことを「パスを通す」と言います。

$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

次に、上記の設定を有効にするためのコマンドを打ち込んでいきます。

$ source ~/.bash_profile

それでは次に、ターミナルのirb上で日本語入力を可能にする設定をしていきましょう。

$ brew install readline

同じくreadlineをどのディレクトリからでも使用できるようにパスを通しましょう。

$ brew link readline --force


④rubyをインストール

 先ずはインストールできる一覧を見ます。

$ rbenv install -l

Available versions:
1.8.5-p52
1.8.5-p113
1.8.5-p114
1.8.5-p115
1.8.5-p231
1.8.6
1.8.6-p36
1.8.6-p110
1.8.6-p111
1.8.6-p114

本来はもっとでてきます。が省略。

インストールしたいバージョンにを指定し、インストール。

 $ rbenv install 2.6.1(← バージョン)

$ rbenv rehash

$ rbenv global 2.6.1

rbenv global コマンドは、そのPCの全ての開発環境で利用するRubyのバージョンを決めることができます。


⑤gemコマンドでbundlerをインストール

 これから、RubyGemsというものを使って、Ruby用のライブラリをインストールしていくのですが、RubyGemsというものについて少し説明していきます。

RubyGemsとは、Ruby用に作られたパッケージ管理ツールです。もともとRubyには、色々便利なライブラリが存在し、それを使うことで自身で1からプログラミングしなくても、ある一定の機能を作成することができます。

そして、Rubyで使われるそれらライブラリは、gem形式でパッケージされています。

その為、RubyGemsを使って、gem形式でパッケージされているライブラリのインストール・アンインストールをできるようにしています。。

  これから、インストールする Ruby on Rails も、Rubyのライブラリの一つであり、gem形式でパッケージされています。

RubyGemsは、Ruby標準添付のライブラリとなっているので、先程Rubyをインストールしたときに同時にインストールされています。

・bundlerとはgemのバージョン管理などをしてくれるgemです。

環境ごとに使用するgemを決めたり、gemのバージョンを指定したりできます。

$ gem install bundler

ここでgemコマンドを使用しています。これは上記で説明した、RubyGemsのコマンドです。


⑥gemコマンドでrailsをインストール

 それでは、今回の最終目的である、Ruby on Rails をインストールしていきましょう。

さきほども説明しましたが、

Rubyのフレームワークである、Ruby on Rails も、Rubyライブラリの一つであり、gem形式でパッケージされています。

それでは、以下のコマンドを実行してください。

※処理に時間がかかるコマンドです。

$ gem install rails --version='5.2.2'


最後にもう一度rehash

gemは、各Rubyのバージョンごとに個別に保管されます。

rbenv rehashコマンドは、そのバージョンで利用しているgemのコマンドを使えるようにするために必要なコマンドです。

gemコマンドでgemをインストールしたときは、rbenv rehashコマンドを実行するのを忘れないようにしましょう。

以下のコマンドを実行してください。

$ rbenv rehash

$ rails -v

最後にバージョンが表示されていればインストールできています。