イントラ内でのRubyGems

イントラ内でRubyGemsでインストールするのに一苦労。。

> sudo gem install パッケージ名

ではインストール出来ない。sudoにしたときにproxyを設定していないから。

> su
> export http_proxy=http://proxy.example.com:8080
> gem install パッケージ名

suに成れない場合は・・・どうするんだっけ。

> sudo gem install パッケージ名 -p http://proxy.example.com:8080

こうね。

アンインストールする場合は、

> sudo gem uninstall パッケージ名

バージョンを指定してインストールする場合は、

> sudo gem install パッケージ名 --version "=1.5.0"

ライブラリに依って、バージョンが指定されてしまう場合がある。

今回、exlsのファイルを開こうとして、rooっていうライブラリを使おうと思ったが、Google Spreadsheetを使用するのに、nokogiriというライブラリの指定をさせられた。

/usr/lib/ruby/vendor_ruby/1.8
/rubygems.rb:274:in `activate': can't activate nokogiri (>= 1.4.4, != 1.5.1, != 1.5.2, runtime) for 
["google-spreadsheet-ruby-0.2.1", "roo-1.10.1"], already activated nokogiri-1.5.2 for ["roo-1.10.1"] (Gem::LoadError)

こんな感じで、1.4.4以上で、1.5.1,1.5.2では動かないと。なので直接1.5.0を指定したが、

> sudo gem install パッケージ名 --version ">=1.5.0"

のように、1.5.0以上と指定することもできるらしい。じゃ、出てきたまま書けばよいのか?と。

> sudo gem install パッケージ名 --version ">=1.4.4, !=1.5.1, !=1.5.2"

と書けばインストール出きるのかと思ったが、出来なかった。。いとかなし。