Ruby on Rails - 无法安装SystemTimer

时间:2012-04-12 15:05:08

标签: ruby-on-rails rubygems ruby-1.9

我正在使用Windows,我只是运行命令:

C:\Sites\cmply>gem install SystemTimer -v '1.2.3'

我收到了这个错误:

Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing SystemTimer:
        ERROR: Failed to build gem native extension.

        C:/RailsInstaller/Ruby1.9.3/bin/ruby.exe extconf.rb
creating Makefile

make
generating system_timer_native-i386-mingw32.def
compiling system_timer_native.c
In file included from system_timer_native.c:8:0:
c:/RailsInstaller/Ruby1.9.3/include/ruby-1.9.1/ruby/backward/rubysig.h:14:2: warning: #warning rubysig.h is obsolete
system_timer_native.c: In function 'install_first_timer_and_save_original_configuration':

任何想法为什么?在此之前,我又遇到了一个可疑的错误:

Gem files will remain installed in C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/SystemTimer-1.2.3 for inspection.
Results logged to C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/SystemTimer-1.2.3/ext/system_timer/gem_make.out
An error occured while installing SystemTimer (1.2.3), and Bundler cannot continue.
Make sure that `gem install SystemTimer -v '1.2.3'` succeeds before bundling.

之前我得到了另一个错误,似乎表明我的Ruby版本在某种程度上不同步:

C:\Sites\cmply>bundle update rake
Updating git://github.com/twitter/twitter-text-rb.git
Fetching source index for http://rubygems.org/
Bundler could not find compatible versions for gem "activesupport":
  In snapshot (Gemfile.lock):
    activesupport (3.2.3)

  In Gemfile:
    rails (= 3.1.3) x86-mingw32 depends on
      activesupport (= 3.1.3) x86-mingw32

Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.

所有这些都是根源于我有一个不兼容的红宝石版本?该如何解决?

谢谢!

2 个答案:

答案 0 :(得分:19)

你不能用ruby 1.9安装system_timer gem,但它不是bug,它是一个功能。这是full explanation

  

“system_timer仅在运行Ruby 1.8时才有意义。你没有   如果您运行Ruby 1.9“

,则需要它

如果您从Ruby 1.8切换到1.9,只需删除system_time gem并更新处理超时的代码。

答案 1 :(得分:3)

检查输出,它说你正在使用1.9.1的包含文件构建Ruby 1.9.3。

看起来你的Ruby安装在某种程度上被打破了。我会尝试重新安装Ruby 1.9.3并检查c:/RailsInstaller/Ruby1.9.3/include/ruby-1.9.3/中是否存在包含文件而不是c:/RailsInstaller/Ruby1.9.3/include/ruby-1.9.1/中的包含文件。