【发布时间】:2015-03-23 10:34:55
【问题描述】:
我很高兴使用 Emacs 的 evernote-mode 直到愚蠢地删除了 OS X 系统 ruby(我在 Yosemite 上)。然后我尝试通过 RVM 安装一个(先尝试 2.0,然后是 1.9),得到了所有必要的 gem,但还是坏了。抛出此消息:
$HOME/.rvm/rubies/ruby-1.9.3-p551/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- oauth (LoadError)
from $HOME/.rvm/rubies/ruby-1.9.3-p551/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:54:in `require'
from $HOME/.rvm/rubies/ruby-1.9.3-p551/bin/enclient.rb:40:in `<main>'
请帮我解决这个问题
upd:我没有看到重新安装系统 ruby(正如人们建议的那样)然后让它与我想通过 RVM 使用的那些冲突的意义。 Ruby 开发人员建议使用 RVM。我将我的默认 Ruby 符号链接到 /usr/bin/ruby。 我似乎特定的脚本使用了我没有的东西。我记得我第一次使用该脚本时很难弄清楚所有依赖项和 gem 并安装它们,经过数小时的调查终于奏效了。但这次我卡住了。
我尝试在 Emacs 之外运行脚本,它运行时没有错误(也许这还不足以找出问题所在)
我尝试运行 irb 并一个一个地要求模块。它说 => true 直到到达require 'oauth/consumer'。我想这可能是缺少的东西?我运行gem install oauth_consumer。它安装了一些 gem,现在在 irb 中对 oauth/consumer 表示 => true,但脚本仍然无法正常工作
【问题讨论】:
-
您使用 rvm 安装了哪个版本的 ruby?我想不是 1.9.1
-
gem install oauth? -
在进行系统管理时,务必密切注意这一点,这一点非常重要。删除 Apple 的 Ruby 只是破坏了他们的一些您可能不会使用的应用程序,并且如果他们使用系统 Ruby,可能会破坏您安装的应用程序。您不能随意更换它,因为它们的安装不在标准位置,因此正常安装并不能真正解决问题。我认为您将需要重新安装操作系统,或者至少重新安装语言子集。
-
请参阅“Is it possible to reinstall/fix Mac OS X's system ruby without doing a complete OS reinstall?”了解有关从操作系统磁盘恢复系统 Ruby 的信息。
标签: ruby emacs osx-yosemite