IronRuby on Mono

Hi,

I was trying to build IronRuby from SVN head, but I encountered a few
problems:

  1. Several times in context.rb, there are calls to String#basename
    and
    String#dirname. These should probably be replaced by
    File.basename(some_string) and File.dirname(some_string),
    respectively.
  2. After fixing this I encountered something an issue because the
    paths
    have been hard coded with “” as the path separator, which doesn’t
    work on
    non-Windows systems. Since I’m not sure where all these paths are
    coming
    from, and I don’t want to break other things, I’ve added pathname =
    pathname.gsub(’\’, File::SEPARATOR) at the beginning of the method.
  3. This still doesn’t fix things, as the method is receiving a
    filename
    surrounded by double quotes (“Actions\ActionSelfExpression.cs”),
    instead of
    just the filename. I’m not sure this is to be sure you don’t mess up
    paths
    with spaces in them, but it causes trouble here. I’ve hacked around
    it by
    removing the quotes before changing the separator issue, but this is
    obviously a dirty hack.
  4. After I did this, it turned out the path being passed resided in a
    subdirectory of the current directory, instead of the current
    directory
    itself. I’m not sure what to do about this issue. Are all the paths
    refering
    to ./src/microsoft.scripting/actions?

Has anyone else tried running a recent version on Mono?

2008/9/3 Wim Vander S. [email protected]:

Has anyone else tried running a recent version on Mono?

Yes, please use patches here:
http://sparcs.kaist.ac.kr/~tinuviel/download/IronRuby/

Ok, these patches get me past the errors I got earlier, but a few steps
further I run into this:

./utils/helpers.cs(37,20): error CS1502: The best overloaded method
match
for System.Reflection.Emit.DynamicMethod.DynamicMethod(string, System.Type, System.Type[], System.Reflection.Module)' has some invalid arguments /usr/lib/mono/2.0/mscorlib.dll (Location of the symbol related to previous error) ./utils/helpers.cs(37,20): error CS1503: Argument 4: Cannot convert typebool’ to `System.Reflection.Module’
Compilation failed: 2 error(s), 12 warnings

I’m using Mono 1.9.1.

2008/9/3 Wim Vander S. [email protected]:

I’m using Mono 1.9.1.

Yes, these issues are fixed in SVN, but not fixed in any stable releases
yet.

On Wed, Sep 03, 2008 at 06:27:15AM +0900, Seo S. wrote:

2008/9/3 Wim Vander S. [email protected]:

Has anyone else tried running a recent version on Mono?

Yes, please use patches here:
http://sparcs.kaist.ac.kr/~tinuviel/download/IronRuby/

Seo and I are working on constructing an automated build test
machine. We’ll document the process as we proceed. Keep your eye on
http://ironruby.colliertech.org/

Cheers,

C.J.

hey there Wim,

I just finished reviewing Seo’s recent postings and it looks like
IronRuby currently requires a Mono from subversion. We’d be happy to
walk you through the process on #mono (irc.gimp.net). If you’re
familiar with ye olde autotools build system, you can grab the source
from svn and go.

$ svn co svn://anonsvn.mono-project.com/source/trunk/mono
$ cd mono
$ svn co svn://anonsvn.mono-project.com/source/trunk/mcs
$ wget -O ~/.devenv http://www.colliertech.org/~cjac/scripts/_devenv.sh
$ . ~/.devenv
$ ./autogen.sh --prefix=$HOME/opt
$ make
$ make install

$ which mono

Cheers,

C.J.

On Tue, Sep 02, 2008 at 11:50:07PM +0200, Wim Vander S. wrote:

Compilation failed: 2 error(s), 12 warnings

http://sparcs.kaist.ac.kr/~tinuviel/download/IronRuby/http://sparcs.kaist.ac.kr/~tinuviel/download/IronRuby/


Wim Vander S.
http://fixnum.org

Hey,

On 9/5/08, Wim Vander S. [email protected] wrote:

The old ones are fixed, but now I’m getting these

Pass -noconfig to gmcs, that will prevent it to reference System.Core,
which causes the conflicts you’re seing.

I’ve built Mono from SVN (following the instructions found on
Redirecting…) now, but I’m still getting
errors. The old ones are fixed, but now I’m getting these (output
contains
many more warnings, but I don’t think those matter at the moment):

./ast/LambdaExpression.cs(178,20): error CS0122:
System.Linq.Expressions.Expression<TDelegate>.Expression(System.Linq.Expressions.Expression, System.Collections.ObjectModel.ReadOnlyCollection<System.Linq.Expressions.ParameterExpression>)' is inaccessible due to its protection level /home/wim/usr/lib/mono/gac/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll (Location of the symbol related to previous error) ./ast/LambdaExpression.cs(178,20): error CS1729: The type System.Linq.Expressions.Expression’ does not contain a
constructor that takes 5' arguments /home/wim/usr/lib/mono/gac/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll (Location of the symbol related to previous error) ./ast/LambdaExpression.cs(313,20): error CS0122: System.Linq.Expressions.Expression.Expression(System.Linq.Expressions.Expression,
System.Collections.ObjectModel.ReadOnlyCollection<System.Linq.Expressions.ParameterExpression>)’
is inaccessible due to its protection level
/home/wim/usr/lib/mono/gac/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll
(Location of the symbol related to previous error)
./ast/LambdaExpression.cs(313,20): error CS1729: The type
System.Linq.Expressions.Expression<TDelegate>' does not contain a constructor that takes 5’ arguments
/home/wim/usr/lib/mono/gac/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll
(Location of the symbol related to previous error)

Any help with this one? I’m really sorry to keep polluting the
mailinglist
with these problems, but I don’t know where else to look.

kind regards,

Wim

I’ve tried alliasing gmcs, but that doesn’t seem to work, how do I make
rake
use gmcs -noconfig instead of gmcs?

kind regards,

Wim