«Неверная строка номера версии mingw32» при запуске рельсов - PullRequest
0 голосов
/ 15 июня 2010

Мой ОС: windows xp, ruby: 1.8.7, rails: 2.3.5

Все было хорошо, но я просто установил "gcc-4.4.0-mingw32-bin" и запустил gem install rdiscount, тогда мои рельсы не могут запуститься.

Теперь, когда я запускаю ruby script/server или rake gems:install, произойдет следующая ошибка:

rake aborted!
Malformed version number string mingw32

(See full trace by running task with --trace)

E:\WORKSPACE_TOPCODER\wenda_ror>ruby script/server
=> Booting Mongrel
=> Rails 2.3.5 application starting on http://0.0.0.0:3000
E:/Ruby/ruby-187/lib/ruby/site_ruby/1.8/rubygems/version.rb:182:in `initialize': Malformed version number string mingw32 (ArgumentError)
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/vendor_gem_source_index.rb:105:in `new'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/vendor_gem_source_index.rb:105:in `version_for_dir'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/vendor_gem_source_index.rb:47:in `refresh!'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/vendor_gem_source_index.rb:45:in `each'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/vendor_gem_source_index.rb:45:in `refresh!'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/vendor_gem_source_index.rb:29:in `initialize'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/gem_dependency.rb:21:in `new'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/rails/gem_dependency.rb:21:in `add_frozen_gem_path'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:298:in `add_gem_load_paths'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:132:in `process'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:113:in `send'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:113:in `run'
        from E:/WORKSPACE_TOPCODER/wenda_ror/config/environment.rb:9
        from E:/Ruby/ruby-187/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
        from E:/Ruby/ruby-187/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
        from E:/Ruby/ruby-187/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require'

Теперь у меня естьУстановил мой ruby ​​и rails, но такая же ошибка все равно происходит.И я искал в Google, не нашел решения.Кажется, я должен переустановить Windows XP.Кто-нибудь знает причину?Помощь ...

Ответы [ 2 ]

0 голосов
/ 03 ноября 2010

Проблема в том, что вы распаковали гем с собственной сборкой расширения, специфичной для Windows.Такой драгоценный камень имеет суффикс, включая mingw32 (например, nokogiri-1.4.3.1-x86-mingw32).После выполнения rake gems:unpack вы должны удалить такие распакованные папки.

С другой стороны, это позволяет избежать проблем с неверно сформированными строками версий (ваша проблема).С другой стороны, пользователи и сервер с другой операционной системой (linux / mac osx) могут создавать собственное расширение гема (не будет работать с версией Windows).

0 голосов
/ 15 июня 2010

Только сейчас я нашел решение: удалите файлы в "vendor / gems"

Причина может заключаться в том, что я запускаю rake gems:unpack после установки gcc, поэтому некоторые недопустимые файлы были распакованы в каталог "gems". После того как я их удалил, все в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...