2012-06-08 43 views
0

我在RedHat RHEL 5.2上從源代碼編譯ruby 1.9.3-p134。

除了兩件事以外,一切都很順利。

當試圖運行在命令行它說沒有在/ usr/bin中/紅寶石發現紅寶石,但which ruby指出/usr/local/bin/ruby。所以,我創建了一個軟鏈接ln -s /usr/local/bin/ruby /usr/bin/ruby,但是......

寶石給了我以下錯誤:

$ gem

/usr/local/lib/ruby/1.9.1/rubygems/version.rb:191:in `strip!': can't modify frozen String (RuntimeError) 
     from /usr/local/lib/ruby/1.9.1/rubygems/version.rb:191:in `initialize' 
     from /usr/bin/gem:14:in `new' 
     from /usr/bin/gem:14:in `<main>' 

沒有運氣,因爲谷歌搜索 「不能修改凍結的字符串」是一個常見的ruby錯誤。

任何幫助,將不勝感激。

回答

0

我可能有衝突的寶石安裝。

find/-name gem 2>/dev/null

/home/muradan/install_ruby/ruby-1.9.3-p194/bin/gem 
/usr/lib64/ruby/gems/1.8/gems/rubygems-update-1.3.6/bin/gem 
/usr/share/locale/gem 
/usr/bin/gem  <----- which gem, doesn't work 
/usr/local/bin/gem <----- works 

所以我刪除,它softlinked到/ usr/local/bin目錄/寶石。

現在,我得到與其他寶石類的東西gemlocks問題(這並不在/ usr/local/bin目錄存在,或者其他任何地方,除了非工作的/ usr/bin中)

消化道出血!爲什麼不一致的Linux!什麼是應用程序安裝到/ usr/bin和一些到/ usr/local/bin沒有韻或理由! FML

相關問題