I changed http://www.ironruby.net/index.php?title=Documentation/How_do_I_install_additional_gems%3F as such:
* Do not share gems with MRI - By default, RubyGems looks in different locations for each Ruby implementation. For IronRuby, it would look in c:\ironruby\lib\ironruby\gems\1.8 assuming ir.exe exists in c:\ironruby\bin. In this case, you will need to install all gems you want to use with IronRuby using igem.bat (c:\ironruby\bin\igem.bat). * Share gems with MRI - Set the GEM_PATH environment variable in your user profile to point to your <mri>\lib\ruby\gems\1.8 directory, e.g. c:\ruby\lib\ruby\gems\1.8. This allows sharing of gems with MRI. IronRuby also includes igem.bat which runs gems with IronRuby. This can be used to install IronRuby-specific gems. * Note that the GEM_HOME environment variables controls where new gems will be installed by running igem.bat. Unless you set this to match GEM_PATH, note that gems installed by "igem.bat" may not be usable from IronRuby [need to check if this is true or not]. And if you set GEM_PATH to include the location of IronRuby gems, MRI will be able to find them as well. Either option is valid. Thanks, Shri From: ironruby-core-boun...@rubyforge.org [mailto:ironruby-core-boun...@rubyforge.org] On Behalf Of Ivan Porto Carrero Sent: Thursday, March 26, 2009 3:23 PM To: ironruby-core@rubyforge.org Subject: Re: [Ironruby-core] require 'spec' not working Actually I don't want to use gems installed by ruby.. that doesn't make sense to me. I will install duplicates if I need it. I actually want the default behavior :) I was replying to the question of Michael Delaney on how he couldn't get the rspec gem to run :) And because he was setting GEM_PATH I tried to explain that he doesn't need to do that anymore. And then showed how it just works for me without setting a gem_path or anything. It seems that there is confusion on how people need to use gems with ironruby, because of earlier blog posts when you needed to use the gems from ruby. There is also a wiki on github for a gem that explains it to do it that way. Also if I wanted to use a non-standard layout for my dirs it would make sense to me to have to set GEM_PATH or IGEM_PATH. 2009/3/26 Shri Borde <shri.bo...@microsoft.com<mailto:shri.bo...@microsoft.com>> Ah yes, gemrc is declarative, not Ruby code which could do things differently depending on the ruby implementation. I got distracted about it not working with “require ‘some_gem’”, and forgot about this fact. Leaving it with separate directories does not allow IronRuby to use gems installed by Ruby, which would be nice. Ivan’s scenario is where he wants IronRuby to use a gem installed by MRI, but not vice versa. It does beg the question why you would want to do such a thing? Ivan, can you explain your motivation? Today people can either keep their gems completely separate (the default behavior if GEM_PATH is not set), or can chose to share everything in both directions. This should work reasonably well most of the time. Would be nice to just leave it at that since it’s a simple solution. For scenarios where you want more control, the user can do something specific to the solution. For example, http://www.mail-archive.com/rubygems-develop...@rubyforge.org/msg02295.html describes how you could copy lib\rubygems\default.rb. Thanks, Shri From: Jim Deville Sent: Thursday, March 26, 2009 2:56 PM To: Shri Borde; ironruby-core@rubyforge.org<mailto:ironruby-core@rubyforge.org> Subject: RE: [Ironruby-core] require 'spec' not working Gemrc gets used by both gem and igem, so that might still not work. Jimmy’s solution might be the best so far (leaving it with the separate directories). JD From: Shri Borde Sent: Thursday, March 26, 2009 2:52 PM To: Shri Borde; ironruby-core@rubyforge.org<mailto:ironruby-core@rubyforge.org> Subject: RE: [Ironruby-core] require 'spec' not working The solution seems to be using a gemrc file. http://blogs.sun.com/mandy/entry/rubygems_etc_gemrc describes the file, but says that it is only used by the gem command, and not honored by a “require ‘somgem’”. However, http://rubyforge.org/pipermail/rubygems-developers/2008-September/004056.html says that this was a bug and has been fixed. From: Shri Borde Sent: Thursday, March 26, 2009 2:06 PM To: Shri Borde; 'ironruby-core@rubyforge.org<mailto:ironruby-core@rubyforge.org>' Subject: RE: [Ironruby-core] require 'spec' not working I realized that this would only work for the igem.bat command and not while running a program which does “require rubygems”. We can figure out some way to get ir.exe to pick this up as well, like adding code to %HOME%\.irconfig.rb. Tomas, do we still support .irconfig.rb? I couldn’t find anything while grepping the sources. Thanks, Shri From: Shri Borde Sent: Thursday, March 26, 2009 1:48 PM To: ironruby-core@rubyforge.org<mailto:ironruby-core@rubyforge.org> Subject: RE: [Ironruby-core] require 'spec' not working Could you change your igem.bat to the following, and set IRONRUBY_GEM_PATH, and then see if it works as you like? This would allow having different GEM_PATHs for MRI and for IronRuby. @echo off setlocal if defined IRONRUBY_GEM_PATH ( set GEM_PATH=%IRONRUBY_GEM_PATH% ) @"ir.exe" "%~dpn0" %* Thanks, Shri From: ironruby-core-boun...@rubyforge.org<mailto:ironruby-core-boun...@rubyforge.org> [mailto:ironruby-core-boun...@rubyforge.org<mailto:ironruby-core-boun...@rubyforge.org>] On Behalf Of Ivan Porto Carrero Sent: Thursday, March 26, 2009 1:42 PM To: ironruby-core@rubyforge.org<mailto:ironruby-core@rubyforge.org> Subject: Re: [Ironruby-core] require 'spec' not working igem env gives you all the paths rubygems look in I actually want a separate list of gems for IronRuby and my Ruby install hence I added a different subdir as my gem path for ironruby. 2009/3/26 Shri Borde <shri.bo...@microsoft.com<mailto:shri.bo...@microsoft.com>> You should not be editing ir.exe.config as you would end up adding new paths for every new library you want to use, which would not be a good thing. Using GEM_PATH is the right solution as you would be using the power of rubygems to find the gems. You should run “igem query --local --name-matches spec” to make sure that RubyGems will indeed be able to find the gem. I wish there was a verbose mode where gem could tell you the paths it looked in, but I don’t see anything at http://docs.rubygems.org/read/chapter/10#page35. Does anyone know of a verbose option? Thanks, Shri From: ironruby-core-boun...@rubyforge.org<mailto:ironruby-core-boun...@rubyforge.org> [mailto:ironruby-core-boun...@rubyforge.org<mailto:ironruby-core-boun...@rubyforge.org>] On Behalf Of Ivan Porto Carrero Sent: Thursday, March 26, 2009 12:59 PM To: ironruby-core@rubyforge.org<mailto:ironruby-core@rubyforge.org> Subject: Re: [Ironruby-core] require 'spec' not working Hi Did you edit your ir.exe.config to point to the right gems dir? I don't think you still need to set the GEM_PATH do you? It works for me and all I do is edit the ir.exe.config to point to the right directories. I am on the git layout so my paths won't make sense for you. When I did that I could do >> igem list *** LOCAL GEMS *** >> igem install rspec ************************************************ Thank you for installing rspec-1.2.2 Please be sure to read History.rdoc and Upgrade.rdoc for useful information about this release. ************************************************* Successfully installed rspec-1.2.2 1 gem installed Installing ri documentation for rspec-1.2.2... Installing RDoc documentation for rspec-1.2.2... Could not find main page README.rdoc Could not find main page README.rdoc Could not find main page README.rdoc Could not find main page README.rdoc >> ir IronRuby 0.3.0.0 on .NET 2.0.50727.3074 >>> require 'rubygems' => true >>> require 'spec' => true >>> true.should == true => true >>> exit On Thu, Mar 26, 2009 at 8:17 PM, Shri Borde <shri.bo...@microsoft.com<mailto:shri.bo...@microsoft.com>> wrote: Does it work with MRI (not the IronRubyInteorp part ofcourse)? Where do you expect spec.rb to be loaded from? I don't have spec.rb on my machine. Thanks, Shri -----Original Message----- From: ironruby-core-boun...@rubyforge.org<mailto:ironruby-core-boun...@rubyforge.org> [mailto:ironruby-core-boun...@rubyforge.org<mailto:ironruby-core-boun...@rubyforge.org>] On Behalf Of Michael Delaney Sent: Thursday, March 26, 2009 8:57 AM To: ironruby-core@rubyforge.org<mailto:ironruby-core@rubyforge.org> Subject: [Ironruby-core] require 'spec' not working hi, i've downloaded the latest ironruby 0.3 and built it locally. its in my path GEM_PATH C:\ruby\lib\ruby\gems\1.8\gems PATH c:\ruby\bin;C:\ironruby\Merlin\Main\bin\Debug File: product_spec.rb require 'rubygems' require 'spec' require File.dirname(__FILE__) + '/IronRubyInterop/IronRubyInterop/bin/Debug/IronRubyInterop.dll' describe IronRubyInterop::Product do it "should have a name" do end it "should have a category" it "should have product lines" end running ir product_spec.rb i get: D:\IronRuby\RSpec>ir product_spec.rb :0:in `require': no such file to load -- spec (LoadError) from custom_require.rb:26:in `require' from product_spec.rb:0 Is there anything I'm missing??? Regards. -- Posted via http://www.ruby-forum.com/. _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org<mailto:Ironruby-core@rubyforge.org> http://rubyforge.org/mailman/listinfo/ironruby-core _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org<mailto:Ironruby-core@rubyforge.org> http://rubyforge.org/mailman/listinfo/ironruby-core _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org<mailto:Ironruby-core@rubyforge.org> http://rubyforge.org/mailman/listinfo/ironruby-core _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org<mailto:Ironruby-core@rubyforge.org> http://rubyforge.org/mailman/listinfo/ironruby-core
_______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core