Experiences building IronRuby from source

Hi, I’ve just downloaded the IronRuby source code because I’d like to
create something akin to IronPython’s pyc.py which can put one or more
ruby files into an Assembly which I can later load into a partial
trust domain and instantiate and run a particular ruby file.

First, a few questions on the solution file:

  1. What is /svn/trunk/runfirst.cmd? Do I really need stuff put into
    %USERPROFILE%? I will ultimately be running under ASP.NET.
  2. There are many warnings in the various projects about weird
    references to mscorlib (which is automatically referenced) and
    “System” without a version. Can I propose a patch with updates to the
    vcproj files?
  3. The Ruby.Console and IronRuby.Tests projects both have a project
    file reference to “…..\App.config” – is this required? This is a
    build error. There’s no App.config file in /svn/trunk/

Thanks,

Also, any help on generating the Assembly from .rb source files would be
appreciated. Is there any equivalent to IronPython’s ClrModule.
CompileModules?

Thanks,

KE:

Also, any help on generating the Assembly from .rb source files would
be appreciated. Is there any equivalent to IronPython’s ClrModule.
CompileModules?

This isn’t supported today, but we’re working on a solution. Not sure
what the ETA is right now though.

Thanks,
-John

Hello Sticky:

  1. What is /svn/trunk/runfirst.cmd? Do I really need stuff put into
    %USERPROFILE%? I will ultimately be running under ASP.NET.

Yes, if you want to run the RubySpec test suite.

  1. There are many warnings in the various projects about weird
    references to mscorlib (which is automatically referenced) and “System”
    without a version. Can I propose a patch with updates to the vcproj
    files?

Can you provide details? I don’t see them here.

  1. The Ruby.Console and IronRuby.Tests projects both have a project
    file reference to “…..\App.config” – is this required? This is a
    build error. There’s no App.config file in /svn/trunk/

I omitted this file by mistake (it’s a strange special case in our
mirroring script), but it’s fixed in r140 which I just committed.

Thanks,
-John

From a clean checkout:

Warning 1 The referenced component ‘mscorlib’ could not be found.
Warning 2 The referenced component ‘System’ could not be found.
Warning 3 The referenced component ‘mscorlib’ could not be found.
Warning 4 The referenced component ‘System’ could not be found.
Warning 5 The referenced component ‘mscorlib’ could not be found.
Warning 6 The referenced component ‘System.Net’ could not be found.
Warning 7 The referenced component ‘System’ could not be found.
Warning 8 The referenced component ‘mscorlib’ could not be found.
Warning 9 The referenced component ‘System’ could not be found.
Warning 10 The referenced component ‘System.Net’ could not be found.

Visual Studio doesn’t report which project the warning is for, but
double
clicking on each warning goes to the problematic reference.

For example, in src/ironruby/Ruby.csproj:

<Reference Include="mscorlib, Version=2.0.5.0, Culture=neutral,

PublicKeyToken=7cec85d7bea7798e" Condition=" ‘$(SilverlightBuild)’ ==
‘true’
">
False
$(SilverlightSdkPath)\mscorlib.dll


False
$(SilverlightSdkPath)\System.Net.dll


False
$(SilverlightSdkPath)\System.dll

I don’t have the Silverlight SDK installed, is this required? IronPython
has
Silverlight support, but doesn’t have these types of references in its
.csproj files.

Thanks,

You don’t need the Silverlight SDK installed … just the Silverlight
Runtime. If you look at the value of $SilverlightSdkPath, it should
point to “C:\Program Files\Microsoft Silverlight\2.0.30523.8” … if so,
then you build will succeed for Silverlight. If not, then you should
make it point to that path.

IF you don’t have Silverlight installed, then you shouldn’t be building
for Silverlight =P

This is for building Silverlight. Silverlight builds against a
different version of the CLR. You should ignore these warnings.