これからRubyをインストールして、Railsを使ってアプリケーション開発をしていきたい初学者の方の役に立てるかもしれません。エラーで詰まっている方の参考になれたらいいなと思います。私はRuby:3.0.1とRails:6.1.3.1 をインストールしました、インストールまでの手順を残しておこうと思います(mac環境です)
まずはRubyのインストール、macos(Big Sur)にも元から入っていますが、バージョンが 2.6.0 くらいだったため、最新の 3.0.1をインストールしました。
rbenvでRubyを入れる解説はこちらの記事がわかりやすかったです。
(ただHomebrewは入っている前提だったので、もし入れられてなければ
https://qiita.com/zaburo/items/29fe23c1ceb6056109fd
こちらの記事を参考にして下さい)
Rubyのインストールまで終えたら次はRailsを入れていきます。
ターミナルで
$ gem install rails
を実行します。しかし、私の場合
ERROR: While executing gem ... (Gem::FilePermissionError)
というエラーが出てしまいインストールできません
これはmacにデフォルトで入っているバージョンのRubyを使おうとして、パーミッションエラーが出てしまっていからだと思います
こちらの記事にPermissionErrorが出た時の対処法が載ってあります
先程 $ rbenv global 3.0.1
とした事で勝手に、インストールしたRubyのバージョンを使えるようになったと思っていましたが、どうやら違ったようです
シェルがzshの方は ~/.zshrc
に、bashの方は ~/.bash_profile
にPATHを通さなければいけません
PATHの通し方はこちらがわかりやすかったです。私の場合は .zshrc ファイルが無かったので作成しました
ちなみに ~/.zshrc (~/.bash_profile)
ファイルというのは、シェルを起動する時に、環境変数や関数などの定義を自動で行ってくれる設定ファイルです。ここにPATHを通しておくと、通したファイルのパスのRubyのバージョンが、毎回自動で認識されて使えるようになります。
$ open ~/.zshrc
でファイルに記述する内容は
[[ -d ~/.rbenv ]] && \
export PATH=${HOME}/.rbenv/bin:${PATH} && \
eval "$(rbenv init -)"
こちらになります。記述し終わったらシェルを再起動して、もう一度 $ gem install rails
をしてみるとインストールできました。
できたのですが、、、
$ rails new practice_app
としてpractice_appフォルダを作成しようとしても
Rails is not currently installed on this system. To get the latest version, simply
type:
$ sudo gem install rails
You can then rerun your "rails" command.
というエラーが出てしまいます。言われたとおり
$ sudo gem install rails
を実行してみます
インストールできました。というメッセージが出てきました、しかし rails -v
を実行するとまた上記のエラーと同じメッセージを返されます
調べてみると、これは先程変更した .zshrc の反映がうまくいってなかった事が原因みたいです
そこで、ターミナルを再起動します。
解決できました。こんなに簡単に。笑
こちらが解決方法の載ってあった記事になります
これで $ rails new practice_app
とすると作成できました!
少し長かったですが、私と同じ環境の方のエラー解決の力に力になれればなと思います。