I have 2 apps that both require RubyInline (specifically ScrubyT and
freeimage).
ScrubyT seems to require 3.6.3 RubyInline while freeimage requires
3.6.6.
I just installed RubyInline and now ScrubyT is throwing an error.
Specifically, ScrubyT reports: “`activate’: can’t activate RubyInline (=
3.6.3), already activated RubyInline-3.6.6] (Gem::Exception)”
I have read that Ruby Gems allows multiple versions of a gem to be used
simultaneously but unfortunately
The RubyGems user guide says to specify specific version numbers in the
require statement (such as ‘= 3.6.3’).
I went to the scrubyt.rb file with the intent to add this in the require
statement in RubyInline. Unfortunately, it seems RubyInline is being
required by a gem that ScrubyT is requiring.
Do I search for that gem and add this clause? Is there another way of
accomplishing this?
Thanks,
John
I went to the scrubyt.rb file with the intent to add this in
the require
statement in RubyInline. Unfortunately, it seems RubyInline is being
required by a gem that ScrubyT is requiring.
If you require rubyinline with a version before the other requires, the
deep require of rubyinline should be a no-op.
On Feb 12, 2008, at 5:01 PM, John H. wrote:
ScrubyT seems to require 3.6.3 RubyInline while freeimage requires
3.6.6.
I just installed RubyInline and now ScrubyT is throwing an error.
Specifically, ScrubyT reports: “`activate’: can’t activate
RubyInline (=
3.6.3), already activated RubyInline-3.6.6] (Gem::Exception)”
Start by beating the author of scrubyt for specifying == instead of >=.
Next, switch your version specifiers from require to gem… whatever
rubygems doco you read is old and require with a version specifier is
deprecated:
gem ‘inline’, ‘>= 3.6.6’
Better… remove all version specifiers… there isn’t anything across
those versions that requires locking in the version.
Follow that up with some cocoa.
I have the same dependency problems pretty often and they really put a
spanner in the works.
`activate’: can’t activate RubyInline (= 3.7.0, runtime) for
[“tomdoc-0.1.0”], already activated RubyInline-3.8.6 for
[“ParseTree-3.0.5”, “tomdoc-0.1.0”] (Gem::LoadError)
What do people do in these situations? Is it possible to activate
specific gem version for specific gem(s) , or does that make no sense?