You really shouldn't be using the mswin32
versions of Ruby (aka. One-Click Installer). They are obsolete. They are compiled with Microsoft Visual C++ 6.0 (aka MSVC6), which was released in 1998(!). Code compiled with MSVC6 is incompatible with code compiled with both GCC and newer versions of MSVC. It is much slower, since a lot has happened in the area of compiler optimizations research in the last 12 years.
Because of the incompatibilities, all libraries that Ruby uses, all C extensions, all libraries that the C extensions use and so on, have to also be compiled with MSVC6. However, MSVC6 isn't even available anymore. Also, many open source projects only test for compatibility with GCC, not MSVC (and certainly not a version of MSVC that has been obsolete for almost a decade).
Use the mingw32
versions (aka. RubyInstaller) instead. They are compiled with GCC 3.4 or 4.5 (the (almost) latest version). With the optional DevKit, you can install any C extension, without the author of the gem having to provide a pre-compiled version; the gem just gets compiled on your local machine, just like it would under Linux or OSX.
However, that --platform=mswin32 at the end of it bothers the hell out of me. I mean, my platform is x64 as it's supposed to be.
Are you sure you have a 64 Bit build of Ruby? Like I wrote above, the mswin
versions are usually compiled with MSVC6, which came out in 1998. AMD64 was only announced in 1999, the spec wasn't finished until 2000 and the first processors didn't appear until 2003, so, unless Microsoft has time-travel technology, it is simply impossible for a 64 Bit version of MSVC6 to even exist!
As far as I know, there are no pre-compiled versions of Ruby for 64 Bit Windows available. The RubyInstaller developers have only just started working on a 64 Bit mingw
build.
If you compiled Ruby yourself, you should use --platform=ruby
to force the Gems being compiled on you local system, since the pre-compiled mswin32
Gems which are available are all incompatible with your system, since they are a) 32 Bit and b) compiled with MSVC6 which is incompatible with whatever compiler you used.