windowsでrubyが使えるようになるまで...


Windows10でRubyを使うために、`rbenv install 2.7.1`ができるようになるまでが長い道のりだったのでまとめました。

#環境
* Windows10
* Ubuntu

#概要
実施することは以下になります。

1. 初期化設定：`echo 'eval "$(rbenv init -)"' >> ~/.bash_profile`
2. 設定の保存：`source ~/.bash_profile`
3. rbenvのインストール：`brew install rbenv ruby-build`
4. バージョンを指定してインストール：`rbenv install 2.7.1`
5. 使用するrbenvのバージョンを設定：`rbenv global 2.7.1`
6. rubyのインストール：`sudo apt install ruby`

これらのコマンドがエラーを出さずに全部通れば、以降の話は何も関係ありません。
初めてのセッティング故に環境が整っておらず、発生したエラーとその対処を記していきます。同じエラーがあれば参考にしていただければと思います。
上から順番にコマンドを入力していってます。

#目次
1. .bash_profileの設定
2. Homebrewをインストール
3. rbenvをインストール

## .bash_profileの設定
* `echo 'eval "$(rbenv init -)"' >> ~/.bash_profile` 

```
エラー：No such file or directory
原因：.bash_profileファイルが存在していないところに書き足そうとした
対応：.bash_profileファイルを作成する
```
対処：`touch ~/.bash_profile`

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

```
エラー：Command 'rbenv' not found, but can be installed with:　sudo apt install rbenv
原因：$(rbenv init -)でrbenvコマンドをしようとしているが、rbenvがわからない
対応：rbenvをインストールする
```
対処：`brew install rbenv ruby-build`

```
エラー：Command 'brew' not found　
原因：brewがわからない
対応：Homebrewをインストールする
```

## Homebrewをインストール

* `/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"`

* `brew -v`（brewコマンドが使えるか確認）

```
エラー：Command 'brew' not found
原因：インストールされたHomebrewがどこにあるのかわかっていない。
対応：Homebrewまでのパスを通してあげる
```
対処：`echo 'export PATH="/home/linuxbrew/.linuxbrew/bin:$PATH"' >>  ~/.bashrc`
対処：`source ~/.bashrc`

* `brew -v`

```
エラー：Command 'brew' not found
原因：.bash_profileファイルにもパスを通す必要がある
対応：.bash_profileファイルに設定を追記
```
対処：`echo export PATH='/usr/local/bin:$PATH' >>  ~/.bash_profile`
対処：`source ~/.bash_profile`

* `brew -v`（Homebrew 2.5.2と表示される）

## rbenvをインストール
* `brew install rbenv ruby-build`
* `source ~/.bash_profile`（rbenvがインストールされたので、.bash_profileの書き換えを保存）
* `rbenv install --list-all`（インストールできるるrbenvのバージョンの一覧を表示）
* `rbenv install 2.7.1`（今回はVer. 2.7.1をインストール）

```
エラー：configure: error: C compiler cannot create executables
原因：Homebrewに必要なものが足りていなかった
対応：足りないものをインストールする
```
対処：`sudo apt install build-essential curl file git`

```
エラー：E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
原因：apt-getが最新になっていない
対応：apt-getをupdateする
```
対処：`sudo apt-get update`

* `sudo apt install build-essential curl file git`
* `rbenv install 2.7.1`

```
エラー：ERROR: Ruby install aborted due to missing extensions.　Try running apt-get install -y zlib1g-dev to fetch missing dependencies.
原因：zlib1g-devがないらしい
対応：zlib1g-devをインストールする
```
対処：`sudo apt-get install -y zlib1g-dev`

* `rbenv install 2.7.1`
* `rbenv versions`（指定したバージョンのrbenvがインストールできていることを確認）
* `rbenv global 2.7.1`（rbenvのバージョンを全体に反映させる。特定のディレクトリのみならglobalではなくlocalで設定。）
* `ruby -v`

```
エラー：Command 'ruby' not found, but can be installed with:　sudo apt install ruby
原因：ruby自体がまだない
対応：rubyをインストールする
```
対処：`sudo apt install ruby`

* `ruby -v`（ruby 2.7.1p83と表示される）

#最後に
原因や対応として間違っているものがあれば教えていただけるととてもありがたいです。
何かの参考になれば幸いです！

#参考にさせていただいたもの
とても助けていただきました、ありがとうございました。

* [rbenvの使い方と仕組みについて](https://qiita.com/Kodak_tmo/items/73147ed4f0eec54d6e94)
* [brew｜command not foundコマンドが見つかりませんの対処](https://lanchesters.site/brew-commnad-not-found/)
* [Homebrew をインストールしたはずなのにbash: brew: command not foundになる。](https://qiita.com/jun3030/items/afcd3287285a57b32ccb)
* [【Ruby】最新バージョンにしようとしてハマったこと](https://qiita.com/yuusaito/items/d971bae6f156307f7b15)
* [Homebrewのインストール方法](https://hacknote.jp/archives/54176/)
* [ubuntuでapt-get install failedなメモ](https://qiita.com/n0bisuke/items/75f5fd5459e7bf75fdac)

#今回の疑問点
調べてまとめるためのメモ

* rubyのバージョンって基本最新をインストールしたらいい？
* sudo, aptとは？
* brewとは？
* yarnとかnpmとかとどう違う？