[自在]gemでインストールしたコマンドが効かないのは、シンボリックリンクが自動作成されないから

iPhoneアプリの開発で、cocoapodsを使えば便利だという話は聞いていて、何度かインストールに挑戦するのだが、うまくいかない。正確にいうと、cocoapodsのインストールは成功するのだが、「pod」コマンドが通らない。

cocoapodsのインストール方法は、

$gem install cocoapods

でインストールして、

$pod setup

で初期化するのだが、この「pod」コマンドが効かない。

そういえば、gemでrailsをインストールしたときもダメだったなと思いつつ、問題はcocoapodsではなく、自分のgemの環境にあるのだろうとは思っていたのだが、特定できなかった。

本日解明した結論は、「gemでインストールしても、シンボリックリンクが自動作成されない場合がある。」ということ。

cocoapodsのインストール先は、

~/usr/local/Celler/ruby/2.1.1_1/bin/

なのだが、ここには当然パスは通っていない。
パスの通っている

~/usr/local/bin/

にシンボリックリンクが設定されて、Cellerの実体を呼びにいくべきなのだが、ここにシンボリックリンクが作成されていないことが問題だったようだ。
このディレクトリで、

ln -s ../Celler/ruby/2.1.1_1/bin/pod ./pod

として、実体を呼び出すシンボリックリンクを設定すれば、「pod」コマンドにパスが通るようになるようだ。
以前うまくできなかったrailsのインストールも同じ理由だったようだ。

これで、cocoapodsが使えるようになったので、「これでiPhoneアプリ開発が進むぞ!」と思いつつ、
gemのインストールでシンボリックリンクが自動作成される場合と自動作成されない場合があるのは何故なのか不明。

Xcode5徹底解説 for iOS/OSX
Xcode5徹底解説 for iOS/OSX

posted with amazlet at 14.05.10
熊谷 友宏
秀和システム
売り上げランキング: 6,841