2

我使用安装了 fxruby

$sudo port install rb-fxruby

正如书中建议的那样。

它工作正常,我的 hello world 程序正常工作。

但是,现在,我编写的其他代码已损坏,每当我尝试使用任何依赖 gem 的代码时,它都不起作用。当我 $ruby -e "require 'rubygems'" 在我的代码中这样做时,它给出了

"LoadError: no such file to load — rubygems" 

当我RUBYOPT="rubygems"在我的 .bash_profile 中设置我的

$ruby -e "puts 'hello world'"
ruby: no such file to load -- ubygems (LoadError)

(上面写着“ubygems”,前面没有“r”,不知道为什么)

http://newsgroups.derkeiler.com/Archive/Comp/comp.lang.ruby/2008-08/msg00351.html建议我对照我的红宝石位置检查我的宝石位置,我得到:

$cat `which gem` | head -n 1
#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby

$ls -l `which ruby`
-rwxr-xr-x  2 root  admin  12680 Feb  7 03:40 /opt/local/bin/ruby

我认为这意味着宝石被混淆了,但不知道如何补救。有任何想法吗?没有宝石真可惜。

- -更新 - -

忘记列出版本:

$which gem
/usr/bin/gem

$gem --version
1.3.5

$ruby --version
ruby 1.8.7 (2009-04-08 patchlevel 160) [i686-darwin9]
4

2 回答 2

2

如果你通过 macport 安装了 rb-fxruby,它也会安装 macport ruby​​。

$ port info rb-fxruby
...
Library Dependencies: ruby, fox, fxscintilla
...

但正如您所见,rb-rubygems(rubygems 的 macport 版本)并未列为依赖项,因此您必须手动安装它。

$ sudo port install rb-rubygems

应该为你做。

于 2010-03-04T18:40:24.830 回答
1

看起来您正在尝试使用 Apple 提供gem的与 Apple 提供的ruby. 您是否安装了 MacPorts 版本?

sudo port install rb-rubygems
/opt/local/bin/gem
于 2010-02-07T19:54:15.217 回答