[Rubyinstaller-devel] Moving Ruby 1.9.1 forward on Windows

Luis Lavena luislavena at gmail.com
Mon Mar 16 15:10:58 EDT 2009

2009/3/16 William Green <will at hotgazpacho.org>:
> Michael,
> VC6 runtime may be on "all Windows", or available for download from
> Microsoft, but the VC6 development tools (specifically, the compiler and
> linker) are not available any longer, and I highly doubt they would even run
> on Vista. So, unless you already have a copy of the VC6 dev tools, you
> cannot obtain one now.

To put this in better words:

MSVCRT, Microsoft Visual C Runtime library is available in all the
Windows versions (since 95 AFAIK).

MSVCRT.dll, often defined as version 6.0 has been available since NT4

The real thing is that MSVCRT cannot be updated with new API since
breaking that library will break all the programs that link to it.

Anyhow, MS managed to make 7.0 version of that DLL in XP Service Pack
2 (7.0.2600.2180), so is not out dated as someone pointed before.

The new development and new features cannot happen in that version,
that's why MS built MSVCR80 and MSVCR90.

> This, I believe, is the reason for the MingW32 build in the first place; all
> the build tools are available, and not controlled by Microsoft.

Yes, MinGW is a freely available alternative that links to the same C
Runtime library.

Even more, the advantage has been proven building gems for Windows
from Linux or OSX.

And ignore for a second the speed stuff.

> Luis, am I totally off-base here, am I missing something?

However, the problem with that is not the compiler, but Ruby. Ruby
uses "mingw32" and "mswin32" to identify the platform used to build
the interpreter, so that defeats every attempt to interchange the

Even more, it prepends the runtime used "msvcrt" to the dll of ruby:
msvcrt-ruby18.dll for both mingw and mswin32, and "msvcr90" for ruby
build with VC2008.

I'm kind of getting bored by this whole discussion, since I already
had this like 3 years ago, and the year after, and last year.

It doesn't matter if we do MinGW/GCC or VC2008 or VC3000, changes will
need to happen in both the development of Ruby and the gems being
created by others, so, what will be the less painful process for
Luis Lavena
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

More information about the Rubyinstaller-devel mailing list