home ホーム search 検索 -  login ログイン  | reload edit datainfo version cmd icon diff delete  | help ヘルプ

Ruby/rubygemsメモ("gem install"するその前にチェックしておきたい項目)

Ruby/rubygemsメモ("gem install"するその前にチェックしておきたい項目)

Ruby / rubygemsメモ("gem install"するその前にチェックしておきたい項目)
id: 1265 所有者: msakamoto-sf    作成日: 2014-02-10 18:30:58
カテゴリ: Ruby 

rubygemsエコシステム:

"gem install" するその前にチェックしておきたい項目

実行環境を調べて、 本当に現在の環境のgemコマンドとインストール先で良いか確認を推奨。

$ gem environment

確認せずに、うっかり gem install するとこんなトラブルに遭遇します。

  • Linuxディストリビューションのパッケージでインストールされたgemとバージョンが衝突して泣く。
  • Rails3で開発していて、途中からRails4での開発も並行するようになり、バージョンや依存ライブラリが衝突して泣く。
  • あるアプリの新規開発でgem installやgem updateしたら、別のアプリの依存関係やバージョン依存に影響が出てしまい、動かなくなり、泣く。

以下の点を十分吟味し、必要に応じて rbenv + ruby-build(Ruby/rbenv, ruby-buildメモ(2014-02版)) や Bundler (Ruby/Bundlerメモ) を導入して、適切な場所にインストールします。

  1. 現在PATHに通っているgemがどこ由来(ディストリビューションのパッケージ / brew / rvm / rbenv + ruby-build)か。
  2. もし他のアプリが同じライブラリの別バージョンにロックインされても影響しないか。
  3. nativeビルド(コンパイル)が必要なgemを導入してコンパイルエラーが発生した状況を想定して、そうしたトラブルに対処出来るだけのノウハウや時間リソースを確保できているか。
  4. 開発するアプリケーションのライフサイクル的に、本当にそこで/そのバージョンで/あるいは、そのライブラリが本当に妥当か。

参考

GEM_HOME, RUBYLIB 環境変数の調整

※GEM_HOMEはgemの「インストール先ディレクトリ」の設定。GEM_PATHは、gemの「探索対象ディレクトリ」の設定。そのため、GEM_HOMEは一つしか設定しないが、GEM_PATHはOSのPATH分割文字列を使って複数のインストール先を指定できる、と理解してます。(2014-02現在の認識。間違ってたらすみません、指摘してもらえれば随時修正します)



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2014-02-10 18:31:46
md5:39db526963e9925e166e1e3c33cc60dd
sha1:baeb5f0e727ed98dfc3a92998a522504a6452e5b
コメント
コメントを投稿するにはログインして下さい。