Hi Folks, I had nothing better to do today, so I played around with building 1.9.1p0 on Windows. I was able to get the base system built with no problem using Visual Studio 2008, and was also able to build the OpenSSL and Iconv extensions with little trouble. I totally replaced the standard Zlib extension with Park Heesob''s pure Ruby version, and RubyGems seems to like it just fine. The only items that are still causing a pain in my ass are readline and curses. Perhaps those are the next extensions ripe for a bounty? :) Here are the fruits of my labour so far, a patched working version of Mongrel (built from source, not gem) is included as a bonus: http://www.mikehodgson.com/files/ruby-1.9.1p0-mswin32_90.zip If you want to try Rails on this, you will need to use the latest Edge version, 2.2.2 will whine about ''test/unit/error'' being missing. Regards, Mike
On Sun, Feb 1, 2009 at 9:44 PM, Mike Hodgson <mhodgson at gmail.com> wrote:> Hi Folks, >Hi Mike, long time no see!> I had nothing better to do today, so I played around with building > 1.9.1p0 on Windows. I was able to get the base system built with no > problem using Visual Studio 2008, and was also able to build the > OpenSSL and Iconv extensions with little trouble. >Awesome!!! It seems your visual studio force in you is strong. Did you needed some patches for OpenSSL or plain makefile? I''ll love to see the patches you included to building that stuff.> I totally replaced the standard Zlib extension with Park Heesob''s pure > Ruby version, and RubyGems seems to like it just fine.Awesome! Zlib can be a real pain get it build on Windows, at least with Visual Studio. MinGW on the other hand is really straight forward.> The only items that are still causing a pain in my ass are readline > and curses. Perhaps those are the next extensions ripe for a bounty? > :) >Join the club. I have 150$ bucks for a bounty, we can pretty much steal the getchar stuff from Highline gem. I cannot comment on curses since I don''t use it, pdcurses to the rescue? Let''s do a bounty for readline, is really a gripe for MinGW too, since it eats the processor and is not easy to build it.> Here are the fruits of my labour so far, a patched working version of > Mongrel (built from source, not gem) is included as a bonus: > > http://www.mikehodgson.com/files/ruby-1.9.1p0-mswin32_90.zip >I''ll check that later how fast it compares to the MinGW build of the same codebase. On the Mongrel stuff, please feel free to fork it on GitHub and patch it!: http://github.com/fauna/mongrel/tree/master> If you want to try Rails on this, you will need to use the latest Edge > version, 2.2.2 will whine about ''test/unit/error'' being missing. >Great work man! Looks like we spent the weekend doing cool stuff! (me working in the new rubyinstaller dsl).> Regards, > MikeCheers, -- Luis Lavena AREA 17 - 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
On Sun, Feb 1, 2009 at 6:54 PM, Luis Lavena <luislavena at gmail.com> wrote:> On Sun, Feb 1, 2009 at 9:44 PM, Mike Hodgson <mhodgson at gmail.com> wrote: >> Hi Folks, >> > > Hi Mike, long time no see! > >> I had nothing better to do today, so I played around with building >> 1.9.1p0 on Windows. I was able to get the base system built with no >> problem using Visual Studio 2008, and was also able to build the >> OpenSSL and Iconv extensions with little trouble. >> > > Awesome!!! > > It seems your visual studio force in you is strong. Did you needed > some patches for OpenSSL or plain makefile? > > I''ll love to see the patches you included to building that stuff.No patches for anything aside from one line in x509.h for OpenSSL, more on that here: http://rt.openssl.org/Ticket/Display.html?id=1700&user=guest&pass=guest I did need to install Activestate Perl and the latest Nasm.> >> I totally replaced the standard Zlib extension with Park Heesob''s pure >> Ruby version, and RubyGems seems to like it just fine. > > Awesome! Zlib can be a real pain get it build on Windows, at least > with Visual Studio. MinGW on the other hand is really straight > forward.I actually got Zlib building from source, fairly easily, so I have updated the ZIP file with that. I''d rather get the "vanilla" stuff working to start.> >> The only items that are still causing a pain in my ass are readline >> and curses. Perhaps those are the next extensions ripe for a bounty? >> :) >> > > Join the club. I have 150$ bucks for a bounty, we can pretty much > steal the getchar stuff from Highline gem. > > I cannot comment on curses since I don''t use it, pdcurses to the rescue? > > Let''s do a bounty for readline, is really a gripe for MinGW too, since > it eats the processor and is not easy to build it.Curses might not be necessary, Readline is definitely a "must have". I might look at it this week and see what''s involved in re-writing it in pure Ruby.> >> Here are the fruits of my labour so far, a patched working version of >> Mongrel (built from source, not gem) is included as a bonus: >> >> http://www.mikehodgson.com/files/ruby-1.9.1p0-mswin32_90.zip >> > > I''ll check that later how fast it compares to the MinGW build of the > same codebase.Let me know how it looks! I am just running the Ruby Benchmark Suite: http://github.com/acangiano/ruby-benchmark-suite/tree/master> > On the Mongrel stuff, please feel free to fork it on GitHub and patch it!: > > http://github.com/fauna/mongrel/tree/masterGood idea! I''ll do this tomorrow. Mike
On Sun, Feb 1, 2009 at 6:54 PM, Luis Lavena <luislavena at gmail.com> wrote:> On Sun, Feb 1, 2009 at 9:44 PM, Mike Hodgson <mhodgson at gmail.com> wrote:>> Here are the fruits of my labour so far, a patched working version of >> Mongrel (built from source, not gem) is included as a bonus: >> >> http://www.mikehodgson.com/files/ruby-1.9.1p0-mswin32_90.zip >> > > I''ll check that later how fast it compares to the MinGW build of the > same codebase.Hi Luis, Here are my results running the Ruby Benchmark Suite against the current VC++ 6.0 based OCI and Ruby 1.9.1 built with VS 2008: http://www.mikehodgson.com/files/ruby_191_186_compare.pdf Do you have 1.9 building with MinGW? It would be interesting to see those results. Regards, Mike
> Here are my results running the Ruby Benchmark Suite against the > current VC++ 6.0 based OCI and Ruby 1.9.1 built with VS 2008: > http://www.mikehodgson.com/files/ruby_191_186_compare.pdf > > Do you have 1.9 building with MinGW? It would be interesting to see > those results.You can build a 1.9 mingw by installing luis'' rubyinstaller then using it to build a "nightly snapshot" or "daily snapshot." Also interesting would be a speed comparison with jruby''s latest, just for interest sake. Cheers! -=r
> Join the club. I have 150$ bucks for a bounty, we can pretty much > steal the getchar stuff from Highline gem. > > Let''s do a bounty for readline, is really a gripe for MinGW too, since > it eats the processor and is not easy to build it.I''d chip in $50 for a readline bounty. -=r -- I wonder if the phrase "meeting my needs in the relationship" has a hint of selfishness...
> Here are my results running the Ruby Benchmark Suite against the > current VC++ 6.0 based OCI and Ruby 1.9.1 built with VS 2008: > http://www.mikehodgson.com/files/ruby_191_186_compare.pdf > > Do you have 1.9 building with MinGW? It would be interesting to see > those results.Am I right in assuming the download link is compiled VS 2008 release mode /O2? Here''s a probably unscientific hack at comparing mingw, VS 2008, jruby.>ruby_19\bin\ruby -vruby 1.9.0 (2008-11-22 revision 20317) [i386-mingw32]>gcc -vgcc version 3.4.5 (mingw-vista special r3) and the VC2008 downloaded is version:>ruby-1.9.1p0-mswin32_90\bin\ruby -vruby 1.9.1p0 (2009-01-30 revision 21907) [i386-mswin32_90] and >jruby -v jruby 1.1.6 (ruby 1.8.6 patchlevel 114) (2008-12-17 rev 8388) [x86-java] ran each test 3 times, took the fastest. Results seemed reasonably steady. Note that I used jruby without any command line parameters, and that the KRI''s are without a patched GC, so some improvement is possible. Note also that the gcc version is a little old, so could possibly improve there. 0.00 means it failed ming vc9 jruby 0.12 0.18 3.00 Startup 0.02 0.02 0.04 core-features/bm_app_factorial.rb 0.06 0.08 0.14 core-features/bm_app_factorial.rb 0.47 0.44 0.00 core-features/bm_app_factorial.rb 0.00 0.00 0.01 core-features/bm_app_fib.rb 1.08 1.27 1.89 core-features/bm_app_fib.rb 12.2 15.5 21.3 core-features/bm_app_fib.rb 20.7 23.9 4.41 core-features/bm_app_raise.rb 0.06 0.09 0.10 core-features/bm_app_tak.rb 0.25 0.34 0.36 core-features/bm_app_tak.rb 0.81 0.97 1.19 core-features/bm_app_tak.rb 2.70 3.33 4.22 core-features/bm_app_tarai.rb 3.30 4.06 5.09 core-features/bm_app_tarai.rb 3.97 4.88 6.04 core-features/bm_app_tarai.rb 3.09 4.05 8.13 core-features/bm_loop_times.rb totals 48.87 59.14 55.94 totals without bm_app_raise [i.e. everything except speed of raising an exception] 28.03 35.06 48.52 Sorry it''s not a comparison with a newer 1.9 version for the mingw version, but I''d imagine it''s pretty close to 1.9.1 Thanks! -=r
On Sun, Feb 1, 2009 at 6:54 PM, Luis Lavena <luislavena at gmail.com> wrote:> It seems your visual studio force in you is strong. Did you needed > some patches for OpenSSL or plain makefile? > > [snip] > > Awesome! Zlib can be a real pain get it build on Windows, at least > with Visual Studio. MinGW on the other hand is really straight > forward.Last time I tried, both openssl and zlib built out of the box in Visual Studio, with no patches or fiddling required, nor even any warnings. It''s only readline that is a problem, really. -- Will
On Wed, Feb 4, 2009 at 9:26 PM, Will Rogers <wjrogers at gmail.com> wrote:> On Sun, Feb 1, 2009 at 6:54 PM, Luis Lavena <luislavena at gmail.com> wrote: >> It seems your visual studio force in you is strong. Did you needed >> some patches for OpenSSL or plain makefile? >> >> [snip] >> >> Awesome! Zlib can be a real pain get it build on Windows, at least >> with Visual Studio. MinGW on the other hand is really straight >> forward. > > Last time I tried, both openssl and zlib built out of the box in > Visual Studio, with no patches or fiddling required, nor even any > warnings. It''s only readline that is a problem, really. >GNU tools are always a pain to get built under Windows. -- Luis Lavena AREA 17 - 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