Ruby on Railsの環境構築やりかた！ ver2020

#はじめに
ここまでProgateでRuby on Railsの学習をしてきたが、やはり上のステップに行くためには自分のPCに環境を構築しなければならないと思い重い腰をあげた。
が、これが思った以上にうまくいかず、かなりの時間がかかってしまった。最初Progateを見ながらやってみたがサーバ立ち上げでうまくいかず、ggるといろいろなサイトでやり方を解説してくれているのを見つけたもののどのサイトも書いてあることがばらばらなところがありしかもどれもうまくいかなかった。なぜだ。
結局、Qiita内にある記事（下記参照）を見ながら現在のバージョンにあわせてやってみることでなんとか構築することができた。
ということで、自分が苦難の末環境構築に成功した方法をメモも兼ねてまとめてみた。
#PCの環境
Windows10 64bit
#参考にさせていただいたページ
https://qiita.com/shita_fontaine/items/aa3f762d7afa20c5d42a
https://teratail.com/questions/221381
ほぼこのサイトの通りですが、バージョン等が多少違ったのでこの記事でもう一度まとめなおしてみます。
#構築
まず[このページ](https://rubyinstaller.org/downloads/)からRubyのインストーラをダウンロードしてくる。
![スクリーンショット (191)_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/551999/bc5db31f-77eb-213f-2239-94e0eabcd923.jpeg)
いろんなバージョンが並んでいるが、その中でもひときわ目立つバージョンが推奨バージョンだ。だが、[参考にさせていただいた記事](https://qiita.com/shita_fontaine/items/aa3f762d7afa20c5d42a)いわく、このバージョンではsqliteとごちゃごちゃしてうまくいかない。実際自分もうまくいかなかった。ので、2.4.9をインストールしよう。２つあるが、32bitOSならX86,64bitOSならX64をダウンロード。
ダウンロードしたインストーラを起動し、Rubyをインストールしていく。最初の画面では規約に同意するか聞かれるので"I accept the License."にチェックしNextをクリック。次の画面ではインストール先やオプションについて聞かれるがここは何も触らずInstallをクリック。さらに次の画面ではコンポーネントを選べと言われるのでMSYS2にチェックを入れてNextをクリック。
　　　　　　![スクリーンショット (193).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/551999/d8918389-8e80-7d6c-a1a0-3457561bc8c4.png)
すると、インストールが開始される。結構長いので雪印コーヒーでも飲みつつ待とう。
　　　　　　![スクリーンショット (194).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/551999/dbab6a75-9c94-4aaa-b5f2-3aa72e4ba7db.png)
この画面になったらインストール完了。Run 'ridk install・・・'にチェックが入っていることを確認しFinishをクリック。![スクリーンショット (195).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/551999/d164a638-dd46-7f30-7b32-ae972ad7d8e5.png)
すると、こんなウインドウが出てくる。ENTERをクリックしてMSYS2をインストールしよう。これまた長いのでコーラ飲みつつ文字が流れていくのを眺めていよう。流れが止まり、`Which components shall be installed? If unsure press ENTER []`と表示されたらもう一度ENTERを押すとコマンドプロンプトが閉じてMSYS2のインストールが完了する。コマンドプロンプトをもう一度開き、以下のコマンドでRubyとRubygemsのバージョンを確認する。筆者の環境では以下のバージョンとなった。

```
C:\Users\ユーザ名>ruby -v
ruby 2.4.9p362 (2019-10-02 revision 67824) [x64-mingw32]

C:\Users\ユーザ名>gem -v
2.6.14.4
```

続いて、bundlerをインストールしていく。budlerについては[こちら](https://qiita.com/oshou/items/6283c2315dc7dd244aef)を参照されたい。
以下のコマンドを入力してインストール、バージョン確認まで行う。

```
C:\Users\ユーザ名>gem install bundler
Fetching: bundler-2.1.4.gem (100%)
Successfully installed bundler-2.1.4
Parsing documentation for bundler-2.1.4
Installing ri documentation for bundler-2.1.4
Done installing documentation for bundler after 13 seconds
1 gem installed

C:\Users\ユーザ名>bundle -v
Bundler version 2.1.4
```
次に、sqlite3をインストールしていく。[こちら](https://www.sqlite.org/download.html)から画像で示したファイルをダウンロードしよう。
![スクリーンショット (197)_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/551999/dbacb905-5ecc-d8ac-03e0-32f6b7a1793d.jpeg)
それぞれを解凍し、sqlite-toolsからsolite3.exeを、splite-dllからsplite3.dllをruby.exeが入っているフォルダ（筆者の環境では`C:\Ruby24-x64\bin`、インストール時に設定をいじってないなら多分同じ）にコピペしよう。すると、sqlite3コマンドが使えるようになる。例によってバージョンを確認しておこう。

```
C:\Users\ユーザ名>sqlite3 --version
3.31.0 2020-01-22 18:38:59 f6affdd41608946fcfcea914ece149038a8b25a62bbe719ed2561c649b86d824
```

最後にRailsをインストールしよう。[参考にさせていただいた記事](https://qiita.com/shita_fontaine/items/aa3f762d7afa20c5d42a)では、`>gem install rails`によってインストールしているが、このコマンドだと一番最後に

```
ERROR:  Error installing rails:
        activesupport requires Ruby version >= 2.5.0.
```
というエラーが出てインストールができない。原因は、`>gem install rails`だと最新版のRailsをインストールしようとするものの今自分たちはsqlite3との兼ね合いでRubyのバージョンが古いものをインストールしてあるからである。そこで、以下の順にコマンドを実行していく（最後以外結果は省略）。

```
>gem install sprockets -v3.7.2
>gem install rails -v "5.0.2"
>rails -v
Rails 5.0.2
```
これでRailsのインストールは完了となる。仕上げにRailsのサーバを立ち上げる。
以下のコマンドを実行しよう（結果省略）。

```
>mkdir sample
>cd sample
>rails new TestApp --skip-bundle
>cd TestApp
```
すると、アプリのディレクトリが作成されるので、そこに移動し、Gemfileを以下のように編集する。

```
#Use sqlite3 as the ・・・
gem 'sqlite3','1.3.13' ←,'1.3.13'を付け足す
```
上書き保存し、コマンドプロンプトに戻って`>bundle install`を実行しよう。
`>rails server'を実行し、http://localhost:3000にアクセスして以下の画面になれば成功。
![2020-01-26 (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/551999/344f08cb-e8d7-2059-1be5-7837ad15f1f7.png)
お疲れ様でした！！
#最後に
この試行錯誤はまじで疲れました。。。初心者なので記事中におかしな点などありましたら申し訳ありません。

最後に、参考にさせていただいた記事の筆者の方本当にありがとうございました。

それでは、また。