2011-11-16 36 views
0

我試圖在Ubuntu 11.10安裝ree-1.8.7抱怨readline的,但我得到以下幾點:RVM安裝稀土元素在Ubuntu

$ rvm install ree-1.8.7 

$ ... 
$ ERROR: Error running './installer -a $HOME/.rvm/rubies/ree-1.8.7-2011.03 --dont-install-useful-gems -c --with-readline-dir=$HOME/.rvm/usr', please read $HOME/.rvm/log/ree-1.8.7-2011.03/install.log 
$ ERROR: There has been an error while trying to run the ree installer. Halting installation. 

如果我檢查install.log文件的建議,它說:

  • GNU的Readline開發頭...沒有發現 ... 請運行apt-get安裝中的libreadline5-dev下根

由於包已不再可用,所以無法工作,所以我終於找到了使用rvm包中的libreadline的方法。所以我安裝它,並重新運行安裝:

$ rvm pkg install readline 
$ rvm install ree-1.8.7 -C --with-readline-dir=$rvm_path/usr 

即使我跑rvm remove ree事先我仍然得到同樣的錯誤。

我被卡住了,我該怎麼辦?

更新:我仍然卡住,但我發現了一些可能對其他類似問題有用的東西,即使它不適合我。從RVM REE page

注:在任何操作系統上,如果安裝REE的失敗,輸出文件報告失蹤的readline-devel的,zlib的-devel和OpenSSL的-devel的標題,你一定表明您已經閱讀包安裝說明 - 否則您肯定會在必要的位置安裝必要的軟件包 - 請檢查您的PATH環境變量以確保類似「/ usr/lib」的內容不存在。有關更多信息,請參閱此REE issue。如果你不想改變你的PATH變量那麼這個補丁修復了該問題REE 2010.02

我檢查我的道路,所有我必須包含/usr/lib/usr/lib/lightdm/lightdm。我的完整$ PATH是這樣的:bash: /home/michel/.rvm/gems/ruby-1.9.3-p0/bin:/home/michel/.rvm/gems/[email protected]/bin:/home/michel/.rvm/rubies/ruby-1.9.3-p0/bin:/home/michel/.rvm/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games: No such file or directory

+0

如果安裝'libreadline6-dev'(確實存在)軟件包而不是所提及的'libreadline5-dev'軟件包會發生什麼? – Mike

+0

@Mike我會嘗試,儘管我安裝了建議的libreadline-gplv2-dev,但它不起作用。 – mbillard

+0

@Mike:我安裝了'libreadline6-dev',刪除了以前的'ree'文件,然後再次嘗試安裝。它似乎試圖對圖書館做些什麼,但它仍然失敗。 – mbillard

回答

0

我終於得到了它的工作運行這行:

rvm install ree --with-readline-dir=$rvm_path/usr --with-iconv-dir=$rvm_path/usr --with-zlib-dir=$rvm_path/usr --with-openssl-dir=$rvm_path/usr 

只運行rvm install ree --with-readline-dir=$rvm_path/usr沒有工作,所以也許他們都需要在同一時間運行。

注意,我跑到下面的命令成功前一段時間:

rvm head update; rvm reload; 

# remove any file from previous failed installations 
rvm remove ree 

# as suggested in a comment on the question 
sudo apt-get install libreadline6-dev 

我不知道,如果libreadline6-dev是必要的,但也許,它是值得一試,如果你遇到了麻煩。