簡體   English   中英

使用RVM在Leopard 10.5.8上更新到Ruby 1.9.2

[英]Updating to Ruby 1.9.2 on Leopard 10.5.8 using RVM

關於通過雪豹遷移到1.9.2的文獻似乎很多,但在Leopard上卻很少。

運行Mac OS X Leopard 10.5.8 rvm 1.6.3 xcode 3.1.4

我在開始安裝rvm時遇到了困難-但是使用了此修復程序並安裝了rvm。 我輸入:

$ rvmsudo rvm install ruby-1.9.2-head
Install of ruby-1.9.2-head - #complete

(如果我嘗試不使用sudo命令進行安裝,則會失敗)要切換默認版本:

$ rvmsudo rvm --default use ruby-1.9.2-head
Using /usr/local/rvm/gems/ruby-1.9.2-head

$ ruby -v
ruby 1.8.7 (2011-02-18 patchlevel 334) [i686-darwin9]

當我將其設置為默認值而不使用sudo命令時。

rvm --default use ruby-1.9.2-head

我收到以以下內容結尾的錯誤日志:

cp: /usr/local/rvm/bin/rdoc: Permission denied
cp: /usr/local/rvm/bin/ri: Permission denied
cp: /usr/local/rvm/bin/ruby: Permission denied
cp: /usr/local/rvm/bin/testrb: Permission denied

然后我輸入

$ ruby -v
ruby 1.9.2p188 (2011-03-28 revision 31204) [i386-darwin9.8.0]

但是當我關閉終端並重新打開時,它又回到了1.8.7

關於如何使此Ruby安裝保持默認設置的任何想法?

這是我的bash個人資料

PS1="\u$ "
alias ll="ls -lahG"

export PATH="/usr/local/rvm/rubies/ruby-1.9.2-head/bin:/usr/local/bin:/usr/loca$

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # This loa$

##
# Your previous /Users/mikalfm/.bash_profile file was backed up as /Users/mikal$
##

# MacPorts Installer addition on 2011-04-23_at_21:38:56: adding an appropriate $
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
# Finished adapting your PATH environment variable for use with MacPorts.


# MacPorts Installer addition on 2011-04-23_at_21:38:56: adding an appropriate $
export MANPATH=/opt/local/share/man:$MANPATH
# Finished adapting your MANPATH environment variable for use with MacPorts.

更新

解決了。 我從“哪個紅寶石”(1.8.7版本)轉到文件位置,備份了文件並刪除了它。 現在ruby -v返回ruby 1.9.2p188(2011-03-28修訂版31204)[i386-darwin9.8.0]

請參閱下面的評論,了解為什么這是一個壞主意。


更新2

解決了,真的,除非我當然做些愚蠢的事。 因此,按照線程中的說明進行操作之后,我清除了原始問題中的所有Sudo問題。 我通過使用implode命令卸載RVM,刪除文件夾並重新安裝而不使用任何sudo命令來做到這一點。

以下問題是我可以強制 rvm一次僅將1.9.2會話用作默認值。 我只是通過閱讀此stackthread force rails來解決此問題,在其中有人建議使用$ echo $PATH命令來使用1.9.2 我做到了,它看起來與我在bash個人資料中所想的根本不同。

它看起來像/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/Users/mikalfm/.rvm/gems/ruby-1.9.2-p180/bin:/Users/mikalfm/.rvm/gems/ruby-1.9.2-p180@global/bin:/Users/mikalfm/.rvm/rubies/ruby-1.9.2-p180/bin:/Users/mikalfm/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/git/bin

原來,我認為#b注釋掉了.bash_profile中的幾行,而沒有。 export PATH=/opt/local/bin:/opt/local/sbin:$PATHexport MANPATH=/opt/local/share/man:$MANPATH 它們直接與我以為我的$ PATH export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH"矛盾。

我從個人資料中刪除了這些行。 我認為我可以在存在依賴項時重新添加它們,並且需要再次使用Mac Ports。 同樣,有人讓我知道這是否是錯誤的方法,但是即使我啟動一個新的終端,它現在也對我有效。

解決了。 我從“哪個紅寶石”(1.8.7版本)轉到文件位置,備份了文件並刪除了它。 現在ruby -v返回ruby 1.9.2p188(2011-03-28修訂版31204)[i386-darwin9.8.0]

不不不!

Mac OS在/usr安裝的Ruby版本由Apple擁有,並已安裝供其使用。 Apple安裝的應用程序正在使用它,您可能已將其破壞。

如果運行find /usr -name '*.rb' ,則會發現Apple使用的許多文件,這些文件不是常規Ruby安裝的一部分。

這不是10.5的問題,我也在我的MB pro上使用了它。 當您不再使用“ Mikal”時,您需要學習停止使用sudo 我很少再使用它了。

我對rvmsudo不太熟悉。 當你做的時候會發生什么

rvm list    
rvmsudo rvm list

我的建議是,卸載以root用戶身份(使用sudo)安裝的rvm,然后重試並按照rvm.beginrescued.com上的指南從.bash_profile中刪除PATH ruby​​1.9.2 / bin,以避免造成混淆。 讓rvm處理它,不要使用sudo和rvmsudo(我從未使用過后者)。

rvm install 1.9.2
rvm use 1.9.2 --default
rvm list #see your rubies

應該足夠了。 希望能幫助到你。

也許您應該添加:

rvm use 1.9.2

到您的.bash_profile文件:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM