[Mac][Ruby]Rails環境構築には、rbenvを使わないなんて正気ですかっ!?

 

 

なんと!9本の記事で詳しく丁寧に解説してるのだ!

 

こんにちは。ナガオカ(@boot_kt)です。

 

9本の記事でRails環境構築の解説をしています

この記事は4本目、rbenvについて解説してます

 

この記事のザックリした内容
◆対象読者

  • Railsの環境構築手順を知りたい人
  • Railsの環境構築で、なぜそれらをインストールするのか「理解」したい人
  • Homebrew?、rbenv?、Bundeler?、gem? ←これらの事がよく分からない人
  • オススメしません!! → 手っ取り早くRails環境構築手順を知りたい人

 

 

 

 

事前説明

ここではこれをインストールします

rbenv

 

rbenvは必須ではないっス
rbenvがなくても、RubyもRuby on Railsも使えます

 

しかしrbenvを使用すると、作成するプロジェクトごとにRubyやRailsのVerを使い分けることができるんですよ

 

Rubyのバージョンはどんどん上がっていきます
Rubyのバージョンアップをしたために、これまで作ったWebアプリが動かなくなることもあります

 

初心者の方にはrbenvの働きはよく分からないかも知れないけど、複数VerのRubyを切り替えられるメリットは大きいため、最初からrbenvのインストールをおすすめしてます

 

事前確認

rbenvがインストールされているか確認する

> rbenv -v
rbenv 1.1.1

こんな感じで表示されればインストール済み

 

既にインストールしてるよって人は、

> brew upgrade rbenv

だけやっておいてね

rbenvもVer上がってたりするので

 

インストール

Homebrew経由でインストール

rbenvはHomebrew無しで単独でインストール可能だけど、この記事ではHomebrew経由でrbenvをインストールする方法を推奨してます

 

その理由はHomebrewの記事を読んでね
>> [Mac][Ruby]Rails環境構築には、Homebrewでパッケージ管理してラクをしろ!

で、Homebrewのインストールを先に済ませておいてね

 

コマンドはこれ

> brew install rbenv ruby-build

Homebrew経由じゃなくrbenv単独でインストールしたい場合、rbenvのサイトでREADME.mdでインストール方法を確認してください
本記事ではその方法は解説していません

 

.bash_profileに記述

viとかで~/.bash_profileを開いて追記してもいいし、以下のコマンドをターミナルに貼り付けて実行してもいい

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

rbenvを使うには、rbenv init -というコマンドが毎回必要
※毎回というは、ターミナルが起動するたびです

ターミナルを起動するたびに手で打ってもいいけど、面倒だよね

ターミナルが起動するたびに.bash_profileというファイルが実行されるので、そこにコマンドを書いておけばいいんだよ

 

オマケ

rbenv init -が何を意味しているかと言うと・・・・

 

echo "$(rbenv init -)"

と打ってみてください

スクリプトが出てきますね

evalというのはMac/Linuxのコマンド
単なる文字列をコマンドとして理解して実行してくれるようなものです
 

サンプル

> echo $SHELL
/bin/bash

> export $HOGE1="HAOGE"
-bash: export: `=HAOGE': not a valid identifier


> export HOGE1="PATH"

> echo $HOGE1
PATH

> eval echo $"$HOGE1"
PATH

> eval "echo $"$HOGE1""
/Library/Frameworks/Python.framework/Versions/3.5/bin:/Users/username/.rbenv/shims:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/bin/

> echo $PATH
/Library/Frameworks/Python.framework/Versions/3.5/bin:/Users/username/.rbenv/shims:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/bin/

 

広告




 

 


 

Rubyプログラミングのレッスンに興味がある方、レッスン内容を聞いてみたい方、なんなりとお問い合わせください。
無料体験レッスンもありますのでお気軽にどうぞ!!!

 

 

 

参考書籍

2 件のコメント

  • .bash_profileに記述という項目で上記のコマンドをそのまま貼り付けたのですが、commnad not foundと応答が来てしまいます、、、解決策などあります??

    • ここでcommnad not foundのエラーが出ると言うことは、echoコマンドの打ち間違いが考えられます(と言うかそれしか考えにくいです)

      もしかして
      > echo ‘eval “$(rbenv init -)”‘ >> ~/.bash_profile
      を丸々貼り付けてますか?

      もしそうなら
      最初の > は不要です。
      echo ‘eval “$(rbenv init -)”‘ >> ~/.bash_profile

      ※多分↓これは問題無いと思いますけど、可能性として一応書いておきます
      which echoと打って、
      /bin/echo
      みたいな表示がされなければ、環境がおかしいです
      そうなるとあちこちの環境を見てみないと分からないですね

  • コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    ABOUTこの記事をかいた人

    Windows/Mac/Linuxを使う現役システムエンジニア&プログラマ。オープン系・組み込み系・制御系・Webシステム系と幅広い案件に携わる。C言語やC#やJava等数多くのコンパイラ言語を経験したが、少し飽きてきたので、最近はRubyやPython、WordPressなどのWeb系を修得中。初心者向けのプログラミング教室も運営中。オンライン・対面・出張等でプログラミングをレッスンします。