WARNING: This is against revision 100. Revision 101 will compile, but
will not run on Mono at the time. I am still working on it. In case
you didn’t know, you can use “svn update -r 100” to “update” to
not-the-latest version.
Stuffs are in the usual place:
http://sparcs.kaist.ac.kr/~tinuviel/download/IronRuby/
patch-mono-r100 consists of four different things:
- One-line case-sensitivity patch to Rakefile.
- Workaround for long-standing console problem.
- Workaround for Mono bug #387040, by changing explicit interface
implementations to implicit one.
- Workaround for Mono bug #387502, by rewriting ?? operator with if
statement. This is a SVN regression and you don’t need it if you are
using Mono 1.9.
Links to Mono bugs:
https://bugzilla.novell.com/show_bug.cgi?id=387040
https://bugzilla.novell.com/show_bug.cgi?id=387502
P.S. DLR, IronPython, IronRuby team should create C# compiler test
suite! You guys have the talent!
C<<svn up -r 100 && mono=1 rake compile>> succeeds for me. Tons of
warnings, but I’ve got a working build. Thanks again for the hard
work here, Seo!
cjcollier@karma:/usr/src/svn/rubyforge.org/ironruby/trunk$ cat which ruby && \
echo ‘===’ &&
cat hello.rb &&
echo ‘===’ &&
ruby hello.rb
#!/bin/bash
. $HOME/.devenv
IRON_RUBY=/usr/src/svn/rubyforge.org/ironruby/trunk/build/mono_debug/
ir.exe
exec mono $IRON_RUBY “$*”
def sayHi( name )
puts “Hello, %s!” % String( name )
end
sayHi( “C.J.” )
Hello, C.J.!
Cheers,
C.J.
Thanks Seo! I’m working with Marek to make Mono play nice with r101 
On May 6, 2008, at 8:15 PM, Sanghyeon S. wrote:
P.S. DLR, IronPython, IronRuby team should create C# compiler test
suite! You guys have the talent!
This might duplicate effort. There is already an open C# compiler
test suite here:
http://anonsvn.mono-project.com/viewcvs/trunk/mcs/tests/
BTW, I’m adding a patch to this suite to catch the bug in https://
bugzilla.novell.com/show_bug.cgi
?id=387040 - it is in code review now.

Did you download the sources into your home drive. It looks like you
need to navigate into the folder where you downloaded the ironruby
source and then call rake 
I am attempting to build r100 on Mono on my Mac and getting an error I
have
not seen before. I have followed the instructions and used the provided
patch. Here is what I get:
rbazinet: ~$ rake --trace compile mono=1
rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb,
Rakefile.rb)
/Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:2143:in
raw_load_rakefile' /Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1897:inload_rakefile’
/Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in
standard_exception_handling' /Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1896:inload_rakefile’
/Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1880:in run' /Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:instandard_exception_handling’
/Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1878:in run' /Library/Ruby/Gems/1.8/gems/rake-0.8.1/bin/rake:31 /usr/bin/rake:19:inload’
/usr/bin/rake:19
Is this just some dumb I am missing?
Thanks,
Rob B.
Yes, the source is on my home drive in a subdir named IronRuby, and yes,
I
navigated to the folder.
Thanks.
-Rob
On Thu, May 8, 2008 at 10:54 PM, Ivan Porto C.
[email protected]
This happens to me sometimes but isn’t related to ironruby in my case.
if you do ls Rake* does something show up? Rake is complaining about
the fact that it can’t find its instruction set (Rakefile). From the
output I see, it doesn’t even start to build
I merely suggested navigating to the folder because of he prompt I see
rbazinet:~$ which would indicate you tried to run the rake command in
your home drive instead of in
rbazinet:~/ironruby $
But of course I’m making the assumption that your prompt indicates in
which folder you are.
ok looks like you need the gem pathname2
sudo gem install pathname2 (might be pathname my memory fails me)
Ivan, I wanted to see if you were paying attention…yes, what I sent
over
shows the command from the WRONG directory. I was in that directory and
just used the command history to run the command so I could send it over
to
the group. The command is failing and I am sending the right one now.
You
can see I am not nuts, just copying and pasting the wrong info.
So, here it is:
rbazinet: ~/ironruby$ rake compile mono=1
(in /Users/rbazinet/ironruby)
rake aborted!
Could not find RubyGem pathname2 (>= 0)
/Users/rbazinet/ironruby/rakefile:5
(See full trace by running task with --trace)
rbazinet: ~/ironruby$ rake --trace compile mono=1
(in /Users/rbazinet/ironruby)
rake aborted!
Could not find RubyGem pathname2 (>= 0)
/Library/Ruby/Site/1.8/rubygems.rb:523:in report_activate_error' /Library/Ruby/Site/1.8/rubygems.rb:131:in activate’
/Library/Ruby/Site/1.8/rubygems.rb:49:in gem' /Users/rbazinet/ironruby/rakefile:5 /Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:2149:in load’
/Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:2149:in
raw_load_rakefile' /Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1897:in load_rakefile’
/Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in
standard_exception_handling' /Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1896:in load_rakefile’
/Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1880:in run' /Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in standard_exception_handling’
/Library/Ruby/Gems/1.8/gems/rake-0.8.1/lib/rake.rb:1878:in run' /Library/Ruby/Gems/1.8/gems/rake-0.8.1/bin/rake:31 /usr/bin/rake:19:in load’
/usr/bin/rake:19
Does this make more sense??
Thanks,
Rob
On Thu, May 8, 2008 at 11:06 PM, Ivan Porto C.
[email protected]
I usually put mono=1 before the call to rake, but I haven’t tried
building on my darwin box yet… I’ll try it now and see what happens…
Yeah, that was that error. I was reading it as not needing a gem but
the
gem reporting an error in the path.
I am now getting an error where it can find system.dll. I saw some
postings
on here about that and pkg-config. I installed Mono from the OSX
package
installer. I would expect these things to be set correctly. Is this a
wrong assumption? Should I have installed from source instead?
What is the correct setting if using the Mono package installer?
Thanks,
Rob
On Thu, May 8, 2008 at 11:26 PM, Ivan Porto C.
[email protected]
On 5/9/08, C.J. Adams-Collier [email protected] wrote:
Same problem here…
I got a successful compilation by replacing line 161 of context.rb and
hardcoding mono lib base directory just like this:
libdir = “/Library/Frameworks/Mono.framework/Versions/1.9.1/lib/”
instead of the original:
libdir = IO.popen(‘pkg-config --variable=libdir mono’).read.strip
It’s just a quick and dirty hack, but it works. Mono is not registered
with pkg-config using the official dmg installer:
adaniele@mugen:/ $ pkg-config --list-all | grep mono
adaniele@mugen:/ $
You can add the following to your ~/.bash_profile (or equivalent):
export
PKG_CONFIG_PATH=“/Library/Frameworks/Mono.framework/Libraries/pkgconfig/”
That did it for me.
Tobias
2008/5/9 Daniele A. [email protected]:
Same problem here…
I grabbed ruby from here:
http://rubyosx.rubyforge.org/
I got the 1.9 mono dist from mono-project.org
I installed the missing gem module:
$ sudo gem install -b pathname
then tried to build:
cjac@beefy:/usr/src/svn/rubyforge.org/ironruby/trunk$ mono=1 rake –
trace compile
(in /usr/src/svn/rubyforge.org/ironruby/trunk)
** Invoke compile (first_time)
** Invoke happy (first_time)
** Execute happy
** Invoke clean_build (first_time)
** Invoke happy
** Execute clean_build
** Invoke compile_dlr (first_time)
** Invoke clean_build
** Execute compile_dlr
rake aborted!
cannot resolve path System.dll
./context.rb:90:in resolve_framework_path' ./context.rb:89:in each’
./context.rb:89:in resolve_framework_path' ./context.rb:130:in resolve_framework_path’
./context.rb:405:in resolve_framework_path' ./context.rb:420:in references’
./context.rb:418:in each' ./context.rb:418:in references’
./context.rb:434:in compile' ./context.rb:432:in chdir’
./context.rb:432:in compile' /usr/src/svn/rubyforge.org/ironruby/trunk/rakefile:137 ./context.rb:578:in instance_eval’
./context.rb:578:in source_context' /usr/src/svn/rubyforge.org/ironruby/trunk/rakefile:135 /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in call’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in
execute' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in each’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in
execute' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:362:in invoke’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:355:in
synchronize' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:355:in invoke’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:369:in
invoke_prerequisites' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1003:in each’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1003:in send' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1003:in each’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:368:in
invoke_prerequisites' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:361:in invoke’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:355:in
synchronize' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:355:in invoke’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in
top_level' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in each’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in
top_level' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1761:in standard_exception_handling’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1733:in
top_level' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1711:in run’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1761:in
standard_exception_handling' /usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1708:in run’
/usr/local/lib/ruby/gems/1.8/gems/rake-0.7.3/bin/rake:7
/usr/local/bin/rake:16:in `load’
/usr/local/bin/rake:16
cjac@beefy:/usr/src/svn/rubyforge.org/ironruby/trunk$ MONO_PATH=
$MONO_PATH:/Library/Frameworks/Mono.framework/Versions/1.9/lib/mono/
2.1/ mono=1 rake compile(in /usr/src/svn/rubyforge.org/ironruby/trunk)
rake aborted!
cannot resolve path System.dll
/usr/src/svn/rubyforge.org/ironruby/trunk/rakefile:137
(See full trace by running task with --trace)
Ah yes, work perfectly. Actually both the solution syou and Daniele
worked
great.
Thanks.
-Rob
On Sat, May 10, 2008 at 7:36 AM, Tobias H. Michaelsen <