MacにHomeBrew,rbenv,bundlerをインストールする

  • 51
    いいね
  • 0
    コメント

主に自分のため、もしくはRubyに全然触ったこと無いiOS開発ユーザーが
そのまま端末のgemをガンガン入れて行かないようにして欲しいと願って作成したメモです。
iOSアプリを開発する方は下記の記事もご一読いただけると余計な心配事が減るかもしれません。
bundler で cocoapods そのもののバージョン管理をする - Qiita

Homebrewをインストールする

OSX向けのパッケージマネージャのHomeBrewを入れます。
ホームページに行くと丁寧にコマンドが書いてあるので
コピーして実行します。
http://brew.sh/index_ja.html

入ったかどうかを確かめます。

$ brew --version
0.9.5 (git revision 8328; last commit 2015-11-19)

rbenvをインストールする

MacにはデフォルトでRubyが入っているのですが
気軽にバージョンアップ等ができないので
複数バージョンを管理することができるrbenvを入れます。

$ brew install rbenv ruby-build

インストールできると rbenv で叩けます

$ rbenv --version
rbenv 0.4.0

利用したいバージョンのRubyを落とします。
まずは利用可能なrubyのリストを確認します

$ rbenv install -l
Available versions:
  1.8.6-p383
  1.8.6-p420
  1.8.7-p249
  1.8.7-p302
  1.8.7-p358
  1.8.7-p370
  1.8.7-p371
  1.8.7-p374
  (中略)
  rbx-2.5.7
  rbx-2.5.8
  ree-1.8.7-2011.03
  ree-1.8.7-2011.12
  ree-1.8.7-2012.01
  ree-1.8.7-2012.02
  topaz-dev

上のリストの中から入れたいバージョンを指定して
インストールします。

$ rbenv install 2.1.0

インストールしたRubyは以下のコマンドでわかります。
※なおsystemはMacに最初から入っているRubyです。

$ rbenv versions
* system (set by /usr/local/var/rbenv/version)
  2.1.0

global でRubyのバージョンを切り替えられます。
システム全体で適用されるので、一部プロジェクトに適応したい場合は
local で変更して下さい。

$ ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin15]
$ rbenv global 2.1.0
$ ruby -v
ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin15.0]
$ rbenv versions
  system
* 2.1.0 (set by /usr/local/var/rbenv/version)

これでRubyのいろいろなバージョンを使えるようになりました。

bundlerをインストールして使う

Rubyのプラグイン、Gemは普通に使うとグローバルに入ってしまいます。
それを防ぐために特定ディレクトリに入れる仕組みがbundlerです。
今回はcocoapodsのインストールを例に記載します。

bundler自体もGemなので、Bundlerだけはグローバルにインストールします。

$ gem install bundler

なお新しいgemを入れたらrbenvでrehashしてください。
行わないとパスが通っていなかったりします。

$ rbenv rehash
$ bundler -v
Bundler version 1.12.4

bundlerの設定ファイルを作成します。

$ bundler init

Gemfile というファイルができるので
入れたいGemを記述します。今回はcocoapodsを追記します。

# frozen_string_literal: true
# A sample Gemfile
source "https://rubygems.org"

gem 'cocoapods' , '0.39.0'

※詳しい書き方は「gemfile - リファレンス - - Railsドキュメント」参照

Gemfile に書いた内容をインストールします。
インストール先のディレクトリとしては
メジャーな vendor/bundle を指定します。

$ bundle install --path vendor/bundle

実際に利用するときは頭に bundle exec をつけて実行します。
cocoapodの場合は pod ほげほげ で実行するので
以下の様な形で利用します。

$ bundle exec pod --version
0.39.0

参考URL

rbenv で ruby の環境を整える - Qiita
cocoapodsの仕組みとバージョン固定 - Qiita