Gems является несколько сломанным в Windows в настоящее время было в то время сломано в Windows, но теперь это исправлено. Следующий обходной путь применяется к старой версии Ruby с помощью One-Click Installer; вам действительно нужно обновить до нового RubyInstaller на базе MinGW и DevKit , к которому обходной путь все еще работает, но более перспективен.
- Найдите версию проблемного камня (в данном случае это eventmachine ), в которой есть двоичный файл win32. Если вы посмотрите на RubyForge , вы увидите, что последним гемом Eventmachine, обладающим двоичным файлом win32, является версия 0.12.0
Принудительно установить эту версию машины событий:
$ gem install eventmachine --version=0.12.0<br>
Successfully installed eventmachine-0.12.0-x86-mswin32<br>
1 gem installed<br>
Installing ri documentation for eventmachine-0.12.0-x86-mswin32...<br>
Installing RDoc documentation for eventmachine-0.12.0-x86-mswin32...
Теперь установите, попробуйте установить исходный гем снова:
$ gem install starling<br>
Successfully installed ZenTest-3.10.0<br>
Successfully installed memcache-client-1.5.0<br>
Successfully installed SyslogLogger-1.4.0<br>
Successfully installed starling-0.9.8<br>
4 gems installed<br>
Installing ri documentation for ZenTest-3.10.0...<br>
Installing ri documentation for memcache-client-1.5.0...<br>
Installing ri documentation for SyslogLogger-1.4.0...<br>
Installing ri documentation for starling-0.9.8...<br>
Installing RDoc documentation for ZenTest-3.10.0...<br>
Installing RDoc documentation for memcache-client-1.5.0...<br>
Installing RDoc documentation for SyslogLogger-1.4.0...<br>
Installing RDoc documentation for starling-0.9.8...
Будьте осторожны, если вы сейчас запустите gem update
, гемы будут тупо пытаться установить последнюю версию eventmachine, которая, как мы уже знаем, не будет работать на Windows. Это приводит к тому, что обновление gem полностью останавливается. См. этот вопрос , чтобы узнать, как обойти это особое раздражение.