2011-04-26 63 views
0

我已经安装REE一个很特殊的任务(使用Rails 2.3.9和Ruby 1.8),我真的需要它被隔离REE耙宝石:安装是不是在CentOS 5个工作正确

在这种情况下,我不会使用捆绑软件或如此。如果我将手动设置每个宝石通过

/opt/ree/bin/gem install agem 

一切工作正常,当我在准备运行

/opt/ree/bin/rake gems:install 

此命令的项目 - 所有(或大部分,我没有检查每个依赖项)gems通过/ usr/bin/gem安装到常见的gem路径中,其中我不需要其中的任何一个

这是一个问题,我不想手动安装所有gem。有没有遇到过这个问题,可能知道解决方案?

回答

1

解决方案,真正帮助我的是一个符号链接暂时代替/usr/bin/gem/opt/ree/bin/gem

以此替代/opt/ree/bin/rake gems:intall发挥预期 - 所有需要的宝石被安装到REE路 - 返回/usr/bin/gem原始宝石可执行自制系统再次稳定

这是不是很干净解决,但它的工作原理,所以它可以像在危急情况下锤使用。

0

环境中的某处有一个GEM_HOME变量,或者调用的运行时ruby不是ree。因此,我建议至少三件事情尝试:

  • 开始与一个几乎空的环境(例如运行env -i sh),并再次运行rake命令,看看这是否仍安装宝石在公共宝石路。要小心,因为env -i是一个空的环境,你可能会看到rubygems的投诉(因为没有HOME或没有别的设置)...
  • 检查shebang行(rake程序的第一行)是否真的表明你的REE二进制文件而不是其他
  • 最后,不要使用稀土元素的二进制,/opt/ree/bin/ruby /opt/ree/bin/rake gems:install

这应该给你什么错误的指示运行耙。总而言之,我认为环境问题可能是这件事最有可能的罪魁祸首

+0

谢谢你,但没有你的建议的作品 - 我试过每一点:1.'env -i sh'有路径问题; 2.“rake”的shebang线导致REE; 3.'/ opt/ree/bin/ruby​​/opt/ree/bin/rake gems:install'完全不起作用(ruby无法运行二进制文件的错误 - 奇怪,但这是事实) – 2011-05-01 19:08:39