代码之家  ›  专栏  ›  技术社区  ›  will

Ruby无法链接到MS C运行时(msvcr90.dll)

  •  0
  • will  · 技术社区  · 15 年前

    我试图在Windows/XP上运行Ruby Thin演示应用程序时,遇到了一个错误,Windows找不到Ruby 1.8.7的“msvcr90.dll”——我找到了一个可再发行的,并将其放在我的路径中,以面对以下信息:

    "R6034 ... application has made an attempt to lead the C runtime incorrectly"
    

    今天早些时候,我运行了一些eventmachine演示,所以我认为问题在于Thin。

    Ruby堆栈转储没有那么大帮助。。。(包括在下面)。有治疗方法吗?

    提前谢谢。

    ------
    W:\> ruby adapter.rb
    >> Thin web server (v1.2.2 codename I Find Your Lack of Sauce Disturbing)
    >> Maximum connections set to 1024
    >> Listening on 127.0.0.1:3000, CTRL+C to stop
    c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/thin-1.2.2/lib/thin_parser.so: 1114: A dynamic link library (DLL) initialization routine failed.  
        - c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/thin-1.2.2/lib/thin_parser.so (LoadError)
          from c:/bin/ruby/v1.8/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
          from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/thin-1.2.2/lib/thin/request.rb:1
          from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/thin-1.2.2/lib/thin/connection.rb:35:in `post_init'
          from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/eventmachine-0.12.8-x86-mswin32-60/lib/em/connection.rb:43:in `new'
          from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/eventmachine-0.12.8-x86-mswin32-60/lib/em/connection.rb:36:in `instance_eval'
        from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/eventmachine-0.12.8-x86-mswin32-60/lib/em/connection.rb:36:in `new'
        from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/eventmachine-0.12.8-x86-mswin32-60/lib/eventmachine.rb:1490:in `event_callback'
        from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/eventmachine-0.12.8-x86-mswin32-60/lib/eventmachine.rb:242:in `run_machine'
        from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/eventmachine-0.12.8-x86-mswin32-60/lib/eventmachine.rb:242:in `run'
        from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/thin-1.2.2/lib/thin/backends/base.rb:57:in `start'
        from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/thin-1.2.2/lib/thin/server.rb:156:in `start!'
        from c:/bin/ruby/v1.8/lib/ruby/gems/1.8/gems/thin-1.2.2/lib/thin/server.rb:142:in `start'
        from adapter.rb:21
    
    2 回复  |  直到 15 年前
        1
  •  0
  •   rogerdpack    15 年前

    似乎需要排除/MD参数 并确保您的库调用xfree,而不是free:)

    http://groups.google.com/group/thin-ruby/browse_thread/thread/c15b2472eb97c2ba/ea7c5127035d193b -r

        2
  •  0
  •   will    13 年前

    对于Ruby1.9,这似乎可以通过( ) RubyInstaller DevKit ,请注意,这项工作仍在进行中。

    回到最初的问题,构建将取决于您使用的Ruby是用哪个编译器构建的,等等,即使是当前版本 DevKit 事情并不是100%。我有几次构建失败。所以对你的环境有一定的敏感性。

    祝你好运