我使用
安装了 fxruby$sudo port install rb-fxruby
按照书中的建议。
它有效,我的 hello world 程序运行正常。
但是现在,我编写的其他代码已损坏,每当我尝试使用任何依赖于 gem 的代码时,它都不起作用。当我做
$ruby -e“需要'rubygems'”
在我的代码中,它给出了
"LoadError: no such file to load — rubygems"
当我在 .bash_profile 中设置 RUBYOPT="rubygems"
时
$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建议我根据 ruby 位置检查我的 gem 位置,我得到:
$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
我认为这意味着 gem 被混淆了,但不知道如何补救。有任何想法吗?没有 gem 真是太糟糕了。
---更新---
忘记列出版本:
$which gem
/usr/bin/gem
$gem --version
1.3.5
$ruby --version
ruby 1.8.7 (2009-04-08 patchlevel 160) [i686-darwin9]
最佳答案
如果您通过 macport 安装了 rb-fxruby,它也会安装 macport ruby。
$ port info rb-fxruby
...
Library Dependencies: ruby, fox, fxscintilla
...
但是正如您所看到的,rb-rubygems(rubygems 的 macport 版本)未列为依赖项,因此您必须手动安装它。
$ sudo port install rb-rubygems
应该为你做。
关于ruby - 通过 macports 安装了 fxruby,现在 rubygems 坏了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2216753/