【发布时间】:2011-03-30 05:11:18
【问题描述】:
如何使 ruby 1.9 成为默认使用的版本,而不是默认安装在 os x 上的 1.8.x?
谢谢。
【问题讨论】:
标签: ruby macos operating-system
如何使 ruby 1.9 成为默认使用的版本,而不是默认安装在 os x 上的 1.8.x?
谢谢。
【问题讨论】:
标签: ruby macos operating-system
从 v2.1.3 开始,将包的特定版本设置为默认值的“正确”MacPorts 方法是使用 select 命令,如下所示:
sudo port select --set ruby ruby19
the MacPorts Guide 中似乎没有任何关于此命令的文档。但是,您可以运行 port help select 以获得非常有限的描述。此功能取代了设置默认版本的+nosuffix“变体”样式。
【讨论】:
我建议从http://rvm.beginrescueend.com/ 安装 RVM 工具(在installing it 上有说明
它允许您拥有多个版本的 ruby 和 gems。安装 RVM 后,然后安装所需的 Ruby 1.9,使用:
rvm install ruby-1.9.1
将其设为默认值:
rvm --default ruby-1.9.1
在此之后,它将成为默认的 ruby。
【讨论】:
RVM 非常适合使用不同版本的 Ruby 和 gem 设置多个环境。
如果你只是想拥有 Ruby 1.9,你可以简单地使用 MacPort 安装它。它将优先于 OS X 上默认安装的那个。
sudo port selfupdate
sudo port install ruby19
sudo port install rb-rubygems
然后,您应该已经安装了 Ruby 1.9 并在路径上前进。做一个ruby -v 来检查。使用 Ruby gem 安装任何其他 Ruby 组件,例如 Rails。
端口安装在 /opt/local/bin 目录中,MacPort 更新 PATH 环境变量,以便在 /usr/bin 预安装包之前获取这些端口。
【讨论】:
您可以创建别名而不是符号链接...这样两个版本都保持不变。将以下行添加到用户主文件夹中的 .profile(如果不存在则创建):
alias ruby='/opt/local/bin/ruby1.9'
然后获取文件:
source .profile
希望有帮助:)
【讨论】:
我会说跳过 rvm。
就我而言,MacPorts 确实将 /opt/local/bin 添加到我的路径中,但将 ruby 1.9 安装为 ruby1.9。 (离开 ruby -> /usr/bin/ruby。)
目前为止最简单的修复方法:
sudo su
cd /opt/local/bin
ln -s ruby1.9 ruby
噗。完成。
确切的命令:
nsmcs-macbook-pro:~ nsmc$ which ruby
/usr/bin/ruby
nsmcs-macbook-pro:~ nsmc$ echo $PATH
/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
nsmcs-macbook-pro:~ nsmc$ which ruby1.9
/opt/local/bin/ruby1.9
nsmcs-macbook-pro:~ nsmc$ sudo su
Password:
sh-3.2# cd /opt/local/bin/
sh-3.2# ls -l ruby*
-rwxr-xr-x 2 root admin 9040 Feb 16 07:43 ruby1.9
sh-3.2# ln -s ruby1.9 ruby
sh-3.2# which ruby
/opt/local/bin/ruby
sh-3.2# ruby --version
ruby 1.9.2p136 (2010-12-25 revision 30365) [x86_64-darwin10]
【讨论】: