[英]Ruby on Mac OSX via Mac Ports
我是Ruby和Mac OSX的新手,虽然我对Unix命令有相当多的经验。 我刚刚通过MacPorts命令安装了Ruby 1.9(port install ruby19)。 然后我需要从root做一个查找,以找出它的去向,结果是:/opt/local/var/macports/software/ruby19/1.9.1-p376_0/opt/local/bin/ruby1。 9。
当前版本的Ruby(1.8.6)通过/ usr / bin / ruby运行,它是/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby的符号链接,其中Current是一个符号链接到名为1.8的目录。
我想将Ruby 1.9作为我的默认设置(以及像irb这样的相关工具),虽然我可以设法做到这一点,但我想知道是否有传统方式。 我应该将MacPorts路径复制或链接到/System/Library/Frameworks/Ruby.framework/Versions/1.9然后将Current指向1.9吗? (我还要重命名或复制可执行文件:ruby1.9到ruby,irb1.9到irb等等)或者我应该吹掉/ usr / bin / ruby链接(和/ usr / bin / irb,等)并创建指向MacPorts版本的新的?
您可以在MacPorts 2.1.3下轻松使用端口选择命令
$sudo port select --set ruby ruby19
改为安装nosuffix
变体:
sudo port install ruby19 +nosuffix
您现在应该使用较新的ruby版本优先于预先安装的版本。
我的建议:
$ port uninstall ruby1.9
然后按照: https : //rvm.io/rvm/install/
然后:
$ rvm install 1.9.2
$ rvm --default 1.9.2
您甚至可以使用Cocoa将rvm install macruby
到玩具上。
在最新版本的macports(2.1.3或更高版本)中,您可以使用port select
命令。
port select --list ruby
sudo port select --set ruby ruby19
对于早期版本的macport,您可以创建一个指向编号的ruby版本的符号链接。 这是macports通常处理不同版本的包之间切换的方式。
cd /opt/local/bin
sudo ln -s ruby1.9 ruby
我强烈推荐RVM 。 它需要一些阅读,但是一旦你安装它,你可以安装一个ruby与rvm install 1.9
(或jruby,ree,1.8等),并使用rvm 1.9
在它们之间切换。 每个ruby版本也将拥有自己的,完全隔离的rubygems集。
卸载ruby版本1.8:
安装ruby版本1.9:
重新打开终端
ruby1.9
二进制文件应该安装在/opt/local/bin
; 如果不是,您可能没有激活端口。
使Ruby 1.9成为默认根的最简单方法是为ruby
创建ruby1.9
的别名。 如果你正在使用Bash,你可以把它放在你的Bash配置文件中:
alias ruby='/opt/local/bin/ruby1.9'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.