Curt Hibbs wrote:
> The MinGW environment could be distributed with the One-Click Ruby 
> Installer
> (which is a plus), but I believe the MS compiler would need to be 
> separately
> downloaded and installed by the end user.
>
> Curt
>
Ah, but if the "environment" is really 77 MB, that would hurt ... a lot ...

I've been thinking about the way R does it. Briefly, their main 
development platform is Linux, and their main method of package 
distribution is source. On Linux, a package with just R source is simply 
downloaded from a repository, unpacked, checked, and then is executable. 
Packages containing C, C++ or Fortran source are compiled at install 
time. R itself is often built from source, although the common binary 
formats (RPM, Debian, MacOS X) are supported. Building R from source on 
a Linux system requires C/C++, Fortran, etc. It's a straightforward 
"configure; make; make check; make install" sequence.

On Windows, however, R is distributed as a one-click installer. And 
packages are usually pre-compiled and installed from ZIP archives 
downloaded from the repository. If you want to build packages from 
source, you have to install an exact set of tools and follow an exact 
procedure. Someone on the R project team does this for most of the 
packages! And if you want to build R itself, you have to install even 
more tools and follow even more exact procedures. Again, someone on the 
R project team does this every time there's a release, and in addition 
*daily* for patched and development releases!!

Incidentally, like R and most of the library packages, the tools to 
build R and the packages on Windows are all open source or at least 
freely downloadable. I believe the only Microsoft dependency is to 
compile help files, though I could be wrong about that.

My question is, "Would such a model (mostly open source, but everything 
precompiled by someone for Windows,)" work for Ruby, Ruby's gems and 
other packages, and Ruby's Windows users? I've lived with it for years 
in the R world. It's not my preferred _modus operandi_ but it was tough 
enough to get an open source tool like R "approved" in a corporate 
Windows IT shop. The fact that R is a far better piece of software than 
commercial packages with licenses costing multiple thousands of US 
dollars didn't matter. These people only see the risks.

So ... is someone going to step up to the plate and pre-compile gems 
that require C or some other language? This model seems to work for R; 
would it work for Ruby? Rails?