1. はじめに
環境構築をしていて、エラーに悩まされることがあります。その際の大きな理由としては「ソフトウェアの依存性」になります。
使用するソフトウェアには、ある別のソフトと一緒に使うことが前提になっていたり、あるバージョン以上でないと動作しないものがあります。これらを気をつけることでエラーに悩まされる可能性を減らすことができます。
また、実務では会社ごと、案件ごとに開発環境が異なるため、その都度環境構築が必要になります。同じ端末で同じソフトウェアを使う場合は不要です。ただ、バージョンが変わる際などは注意が必要になります。
2. 環境構築の準備
今回は、MacOSに最低限のソフトウェアのみインストールし、完了後には簡単なRailsを使用したプログラムが書けるようになります。
今回はインストールするのは以下になります。
- Command Line Tools for Xcode
- Homebrew
- rbenv
- Ruby
- gem
- bundler
- Rails
以下が、ソフトウェア同士の関係図になります。
それぞれ簡単に説明をします。
-
Command Line Tools for Xcode
GCCをはじめ、MacOSで様々なプログラミング言語を利用するために標準的に利用されているツールです。
開発に利用するソフトウェアはRubyだけではなく他の言語で作られているものもたくさんあります。そのため、まずこれをインストールしないと多くのソフトウェアがプログラムを実行できず動作しません。
-
Homebrew
Macにインストールしたソフトウェアを管理してくれます。
先述した依存性などの問題を解決してくれ、問題がある場合は教えてくれるツールです。慣れるまではHomebrewを使用した方が安心なので積極的に使っていきましょう!
-
rbenv
Rubyのバージョンを管理してくれます。ruby environmentの略です。Rubyのバージョンを色々とインスト−ルすることでお互いに干渉してしまい、動作不良が起こることもあるのでrbenvを導入して環境ごとにRubyのバージョンを管理することが必要です。
-
Ruby
言わずもがな、これがないとコードを書いても実行できません。
Macの場合、初期でRubyが入っていますが、バージョンが古くて実用性はありません。簡単なRubyコードを書く程度なら問題ないですが、アプリ開発などを使用する際には新しいバージョンを導入します。
-
gem
Rubyのライブラリ管理に使用します。何か外部サービスの機能を利用したり、便利な機能を使用する際に使用します。Ruby GemsというWebサイトに
あるものを使う方がメンテナンスをされていて使いやすくなっています。
-
bundler
gemを管理するときに使用します。Bundlerを使用すれば依存性なども考慮してくれるのでHomebrew同様こちらもトラブル回避のために使用するようにしましょう。
-
Rails
Rubyのフレームワークですが、gemでも配布されているので簡単にインストールできるためRuby環境ではRailsが使用されることが多いです。
3. ソフトウェアのインストール
-
Command Line Tools for Xcode
はじめに「Command Line Tools for Xcode」をインストールします。Xcode全体をインストールしても問題ないですが、容量が大きいので時間などに余裕のある方は全体をダウンロードしても問題ありません。今回は「Command Line Tools for Xcode」をインストールします。
まず、ターミナルを開き、以下のコマンドを入力します。
xcode-select --install
コマンドを実行すると、インストール確認のポップアップがデスクトップに出てきますので、OKを押してください。
※もしこちらの方法でインストールができなかった場合は、XcodeをMacの「App Store」アプリからインストールしてください。容量がかなり大きいので、できれば固定のブロードバンド回線を使い、時間に余裕を持って行いましょう。
※このコマンドを打って下記のエラーが出る場合は、すでにインストールされている可能性があります。
error: Command Line Tools are already installed
errorと出ているので「インストールに失敗した」とよく間違えますが、特に問題ありません 。この場合は無視して次のHomebrewのインストールへ進みましょう。
-
Homebrewのインストール
https://brew.sh/index.html にアクセスします。画面を開くとインストールと書かれていると思いますが、その中に記載のコマンドをターミナルに打ち込みます。
これでHomebrewのインストールは完了です。
-
rbenvのインストール
次にrbenvのインストールです。
Rubyには様々なバージョンや種類があり、プロジェクトによって使われているものも様々です。そのため、今後Rubyで開発していく中で、Rubyの様々なバージョンを適宜切り替える必要があります。
rbenvはシンプルな機能で、Rubyのバージョンを切り替えることに特化しています。
様々なRubyを利用するためにはruby-buildというツールが必要なので、こちらもインストールします。
brew install rbenv brew install ruby-build
※brew install 〜 というコマンドは、Homebrewを使ってインストールすることを意味しています。
rbenv -v とタイプして、バージョンが表示されていればインストールは完了です。
rbenvはインストールしただけだと、まだ使える状態になっていません。
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
この2つをタイプしてPATHを設定します。
また、こちらで作成した .bash_profileは変更しただけだと反映されないので
source ~/.bash_profile
このコマンドを使用して設定を再読み込みさせます。
-
Rubyのインストール
ここからRubyのインストールです。先ほどインストールしたrbenvを使用します。
以下のコマンドをタイプします。
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 1.8.6-p230 1.8.6-p286 1.8.6-p287 1.8.6-p368 1.8.6-p369 1.8.6-p383 1.8.6-p388 1.8.6-p398 1.8.6-p399 1.8.6-p420 1.8.7-preview1 1.8.7-preview2 1.8.7-preview3 1.8.7-preview4 1.8.7 1.8.7-p17
この中からインストールしたいバージョンを選択し、以下のコマンドをタイプします。(Ruby2.4.1の場合)
rbenv install 2.4.1
このとき注意すべきなのは、バージョンの後ろに「-dev」などが付与されているバージョンです。こちらに関してはまだ開発中のバージョンなのでインストールするのはやめておきましょう。また、最新バージョンはまだ世に解決策などが出回っていないこともあるので極力新しいのを利用したい場合は1つ古いものなどを選ぶようにしましょう。マイナーバージョンであれば大きな変更がないので最新を使ってしまっても問題ないでしょう。
次にどのバージョンのRubyを使うかを設定していきます。
rbenv globalコマンドでデフォルトで使用するバージョンを指定できます。
rbenv global 2.4.1
続いて rbenv rehash コマンドを実行することで、指定したバージョンのRubyが使える状態になります。
rbenv rehash
これでRubyのインストールは完了です。
ruby -v
をタイプして、先ほど導入したバージョンが表示されるかを確認します。
-
Bundlerのインストール
次にBundlerをインストールします。
BundlerはGemとして配布されています。
Gemをインストールするgemコマンドを使うことによってインストールできます。
gem install bundler
-
Railsのインストール
次にrailsをインストールします。
gem install rails
コマンドを実行すると、いろいろなGemのインストールが始まります。
※Railsは巨大なGemなので時間がかかる場合があります。余裕を持って実行してください。
rails -v
のコマンドをタイプして、バージョンを確認します。
Ruby2.4以降の場合は、最新のRailsをインストールして問題ないです。
-
RailsのDBをMySQLに変更する
rails new アプリケーション名 -d mysql