いくつかのサイトを参考にしながらの試行錯誤で、環境つくるところまで。出来るだけ詳細に。
それぞれのサイトでバージョンの違いや、そもそも全く違う手法など、なかなかに大変でした。
Macは最初からrubyがインストールされています。
しかし、買ったばかり!とかならわかりませんが、だいたいはそのバージョンが最新であることはないでしょう。
まずはそこからです。
ruby -v
2.0.0
これが私の環境でのバージョンでした。
これを最新(もしくはそれに近いところ)に持っていきますが、これが一筋縄でない。
brew -v
これを打って、brewがない、と怒られた人はHomebrewのインストールから始めないといけません。
へ行くと、インストールのためのコマンドが記載されています。
ruby -e “$(curl -fsSL href=”https://raw.githubusercontent.com/Homebrew/install/master/install)”>https://raw.githubusercontent.com/Homebrew/install/master/install)”
こんな感じのものです。今ならこのままコピペで行けるでしょう。私が参考にしたサイトに載っていたものは少し古く、だめでした。ちゃんと本家からコピペするのが良いです。
これでbrewが使えるようになります。
以下をバリバリと実行して行きます。
brew install rbenv
brew install ruby-build
brew install rbenv-gemset
できたらインストール可能なrubyのバージョンを探ります。
rbenv install –list
私は今回は2.4.0を選択しました。もっと新しいのもありましたが。
ちなみにrails5は2.2.2以上を求めてきますので、それを念頭に置いて選択します。
選択したらインストールします。
rbenv install 2.4.0
rbenv global 2.4.0
ここから現状デフォルトとなっている2.0.0から今インストールした2.4.0へデフォルトを切り替えます。
ここでちょっと引っかかりました。参考にしたサイトでは以下のようになっていました。
eval “$(rbenv init -)”
source ~/.bash_profile
これを打って
ruby -v
2.4.0
このように返ってくるので切り替わったと勘違いしてしまいましたが、これ、一時的です。ターミナルを閉じたらまた元の2.0.0に戻ります。
そりゃそうです。後ろの
source ~/.bash_profile
これ、この段階では何の意味もないですよね。
eval “$(rbenv init -)”
これで.bash_profileに何かが足されるわけでもなんでもない。単にrbenv init – が返すコマンドをevalで実行しているに過ぎません。
このrbenv init – 返してくるコマンド、実際にはshellですがこれを.bash_profileに書く必要があります。
しかし、.bash_profileは隠しファイルで、リダイレクトとかで追記出来ませんでした。手で書くしかない。
(私はそう判断しました。)
なので、
eval “$(rbenv init -)”
の中身を知るために
echo “$(rbenv init -)”
を実行します。すると
———————————————
export PATH=”/Users/xxxxxxxxx/.rbenv/shims:${PATH}”
export RBENV_SHELL=bash
source ‘/usr/local/Cellar/rbenv/1.1.1/libexec/../completions/rbenv.bash’
command rbenv rehash 2>/dev/null
rbenv() {
local command
command=”$1″
if [ “$#” -gt 0 ]; then
shift
fi
case “$command” in
rehash|shell)
eval “$(rbenv “sh-$command” “$@”)”;;
*)
command rbenv “$command” “$@”;;
esac
}
—————————————————-
これは私の場合ですが、こんな感じのshellが返ってきます。
これをそのまま.bash_profileに書きます。
sudo vim ~/.bash_profile
で、書き足したら保存。
ここで初めて
source ~/.bash_profile
これを実行してもいいし、ターミナルを開き直しても良い、
恒久的に
ruby -v
2.4.0
が返るようになります。
最初のrubyだけでこの有様です。
次にxcodeのcommand line toolsをインストールします。
これもどこかのバージョンからインストール方法が変わったので少し古いサイトだと参考になりません。
xcodeがインストールされてない場合は先にそちらかも。
これはコマンドラインでやる必要ないかと思います。
うろ覚えですが、appstoreから取ってこれたような気がします。
で、xcodeがある前提で、
xcode-select –install
これ、実は私はすでに過去にインストールしてたようです。記憶にないですが。。
でもその状態で実行しても、「もうあるよ。」的なメッセージが出て終わるので実害はなさそうです。
(windowsの場合はDevKitってのを入れるみたいです)
次は、なんとNode.jsを入れます。いつの間にこんなもの必要とする身体になってしまったの?!って感じ。少々驚きつつ、とにかくインストールします。
いったん、現状入っているか調べるのは
node -v
とかで。入れてる人は飛ばして下さい。
これもまずはnodebrewを入れてからです。めんどい。
brew install nodebrew
そして、インストールしたnodebrewを使ってNode.jsをインストールするのですが、ここでまた引っかかりました。
コマンドは
nodebrew install-binary latest
で最新が入る、はずですが、エラーします。
エラー内容を見ると、ダウンロードしたファイルを置けないみたい。置こうとしている場所は$HOMEの.nodebrew/src配下です(更にもう少し深いディレクトリです)
ところが、自分の環境を見ると、.nodebrewディレクトリさえありません。これが何故かは分からない。私の環境特有なのか、そういうものなのか、分からないがnodebrew自体はインストール出来ているのに~/.nodebrewディレクトリはありません。
手で作りました。
mkdir .nodebrew
cd .nodebrew
mkdir src
ここまで必要かは分かりませんが一応作っておきました。
そして、sudo付きで再度実行します。パーミッションではねられますから。
sudo nodebrew install-binary latest
これでNode.jsがインストールされるがまだ使えない。
まず、インストールされたNode.jsのバージョンを確認する。
nodebrew list
私の場合はv8.4.0だった。なので
nodebrew use v8.4.0
もう一度
nodebrew list
を打ち、currentにこのバージョンが入っていればOK。
次は実行パスを通す。
echo ‘export PATH=$PATH:/Users/☓☓☓☓☓☓☓/.nodebrew/current/bin’ >> ~/.bashrc
もちろん手で直接書いても構わない。
これで
node -v
が動けば良いが動かない人がいるかも知れない。
動かないのは.bash_profileに.bashrcを読む記述がないせいが濃厚だ。
if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi
この一文を.bash_profileに記載する。
そして
source ~/.bash_profile
を実行してもいいし、ターミナルを開き直してもいい。
node -v
これでバージョンが表示されればOK
それから一応rpmも動くか見ておく。
rpm -v
ここまで来てやっとrailsのインストールだ。
これも複数の情報があったが、これがノーマルだろうと思えるものを採用した。
私の環境ではsudoを付けないとダメだった。
sudo gem install bundler
sudo gem install rails
railsのインストールには少し時間がかかる。
終わったら
rails -v
もう後は使うだけだ。
プロジェクト用フォルダを作り、その中にアプリを作っていく。
rails new AppName
そして起動は
rails s
起動確認
終了は
ctrl + c キー
後は遊んでくれ。
後日談:
実際に動かす段になって
rails server
でエラー
なんか、sqlite3関連でのエラーっぽいが、よく見ると
bundle install
を実行しろと言っているみたいなので、そのとおりに。
ここからがさーたいへん。
このbundle install自体が成功しない。
まず、gem自体をupdateする。しかし、パーミッションでえらーするので、
sudo gem update
で。
そして、bundle install
さらにエラーが出まくる。
gem install bindex -v ‘0.5.0’
これをやれと、ただしこれ以降こんなようなのが数回続くのだが、全てsudo付けないとだめです。
sudo gem install bindex -v ‘0.5.0’
sudo gem install byebug -v ‘9.0.6’
sudo gem install ffi -v ‘1.9.18’
sudo gem install puma -v ‘3.10.0’
sudo gem install sqlite3 -v ‘1.3.13’
これだけやってやっと
bundle install
が成功し、
rails server
が正常起動、動くようになりました。
MacでのRails環境構築は、過酷な道のりです。
Winでは、バージョンさえ注意すれば難なく動くんだけど。。
#Mac #Rails5 #gem #bundle#PATH