"找不到msvcrt-ruby18.dll"与Ruby

Ada*_*rte 14 ruby dll rubygems ruby-on-rails

当我尝试运行简单的rails命令时,例如:

rails -h
Run Code Online (Sandbox Code Playgroud)

几秒钟后我收到一个弹出错误,上面写着:

ruby.exe - 无法找到组件

此应用程序无法启动,因为找不到msvcrt-ruby18.dll.重新安装应用程序可能会解决问题.

我在跑步:

  • Windows XP(是的,我知道我应该在Windows机器上尝试ruby).
  • Ruby 1.9.1p378 [i386-mingw32].
  • 已将我的所有宝石更新到最新版本(截至2010年7月14日).

有没有办法可以测试是什么造成了这个错误?有谁知道这意味着什么?

我发现在我的ruby19/bin folder存在msvcrt-ruby191.dll但是没有msvcrt-ruby18.dll任何地方.如果我使用ruby 1.9,为什么还要寻找呢?

Cha*_*per 16

Mongrel的当前发行版1.1.5与Ruby 1.9不兼容,并在运行时抛出此错误.它很容易解决 - 只需确保Rubygems是最新的:

gem update --system
Run Code Online (Sandbox Code Playgroud)

然后安装新的预发布版本的Mongrel:

gem install mongrel --pre
Run Code Online (Sandbox Code Playgroud)

或者,如果这不是由Mongrel引起的,您可以尝试安装DevKit,然后尝试:

gem install *gemname* --platform=ruby
Run Code Online (Sandbox Code Playgroud)

这迫使使用DevKit从源代码编译扩展,并与我尝试过的大多数主要宝石一起使用.