LoginSignup
0
0

M1macにRuby on Railsの環境を構築するまで

Posted at

結論 

  1. Homebrewをぶち込む
  2. rbenvをぶち込む
  3. rubyをぶち込む
  4. RoRをぶち込む

以上!!!

環境

  • macbook air (M1 2020)
  • 16G
  • ゴールの環境は最新のruby(3.2.2)、ruby on rails(7.0.7.2)のローカル環境の構築

手順 1 homebrewをぶち込む

  • 以下のサイトに進み、黒い部分をコピー
    homebrew
    スクリーンショット 2023-09-04 19.55.34.png

  • 画像の黒に囲まれた部分をコピーし、「ターミナル」を立ち上げコピーペースト
    スクリーンショット 2023-09-04 19.59.44.png
    ※「ターミナル」はいじってなければ以下の9つのカラフルがあるやつの中にある場合が多い

確認コード
brew --version

でバージョンが出てきてくれれば突破!

手順 2 rbenvをぶち込む

確認コード
brew install rbenv

と入力しインストール。

確認コード
rbenv --version

でバージョンが帰ってきたら優勝。

手順 3 rubyをぶち込む

macだと標準でrubyが入っているが、そのままにしておくと後々エラーが出て面倒なのでrbenvを使ってrubyを統一した方がいい。自分は手順3を適当にすっ飛ばして3時間悩む羽目になった。

この手順を飛ばすとruby on railsを頑張って入れてもエラーが起きて実行できなくなると思います。
その理由としてはrubyのpathが正しい位置に設定されていないため。
なので正しいパスを設定してあげる。

vi ~/.zshrc

上記コードをターミナルで打つとよくわからない画面が出てくると思うが、一旦落ち着いて

  • キーボードのiを押す(入力モードに入る)
  • 以下をコピペ
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
  • キーボードのescを押す(読み込みモードにする)
  • 「:wq」を押して終了。(保存して終わる意味)
  • 以下をターミナルに打ち込む
source ~/.zshrc

続いてやっとrubyを入れます。

rbenv versions

とすると

rbenv versions
* system

こんな感じになります。これは現在rbenv経由でrubyが使えないってことです。ここで適当にbundle installするとさらに意味不明になる。

そのためまずは自分のrbenvにrubyを入れてあげる必要がある。

rbenv install -l 

で現在のrubyのバージョンが指定できるので、

rbenv install 3.2.2

みたいに打ち込む。めんどくさければ「3.2.2」を入れなければ最新のものが入る(環境によってはNGなのでgemとか確認した方がいいかも)

rbenv init

で反映して、

rbenv versions
system
* 3.2.2

ってなっていればOK

手順 4 Ruby on Railsをぶち込む

gem install rails

と打ち込んで完了のはず。あとはrailsのバージョンを確認して #sudoがでなければOK

※ sudo ~~~はrbenvやvim(変な画面)の操作や設定が間違ってる可能性が大なので戻ってみると良いです。

総評

久々に環境構築するとlinuxの理解のなさに驚く。基本情報周りもちゃんと復習しなきゃなと思った。見逃してるところが多々ありそうなのでまた見返して修正する。

参考

https://nishinatoshiharu.com/new-rails-tutorial/
https://qiita.com/soarflat/items/09be6ab9cd91d366bf71
https://zenn.dev/blendthink/articles/f0964e3642d33b

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0