2010-11-07 273 views
0

我已经从源代码安装了Ruby 1.9.2。但是,似乎在识别已安装的捆绑软件gem时遇到了一些麻烦。红宝石1.9.2安装和宝石

/etc/environment文件:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/ruby/bin" 

它看起来像我的宝石是在/usr/local/ruby/gems/1.9.1/gems/。 在我的Rails应用程序,当我试图运行sudo的包安装,我得到一个错误:

sudo: bundle: command not found 

而且,为什么目录1.9.1说?

+0

尝试rvm ...(在mac上)这是相当可靠的 – 2010-11-07 20:39:32

+0

rvm在Mac和* nix是相当可靠的,不只是Macintosh。 – 2010-11-07 21:11:45

回答

-1

类型which ruby看到你的系统认为红宝石的路径是英寸

你使用构成了--prefix=...选项,当您设置的配置?通常来自源代码的Ruby不在/ usr/local/ruby​​/bin中。 Ruby可执行文件位于/ usr/local/bin/ruby​​中,但这不是您设置PATH以使用它的方式,因此看起来很可疑。注意你的路径已经包含了/usr/local/bin,所以如果Ruby安装到源安装的正常位置,那个路径将会选择它并且最终搜索/usr/local/bin/ruby将是错误的和不必要的。

如果您在安装新版本的Ruby之前安装了gem,那么该gem将成为之前安装的一部分,而不是当前安装的一部分,并且不可见。他们是单独安装。

除非您尝试为多个用户进行系统范围的安装,否则没有真正的理由从源代码进行编译并允许将其安装到/ usr/local/bin。我强烈建议安装RVM,然后让它将任何Ruby版本安装到RVM的~/.rvm沙箱中。 Gems也将相对于当前启用的RVM控制的ruby进行安装,这真是一件好事。