[Rubygems-developers] Could not find RubyGem - because it's not a gem

Daniel Berger djberg96 at gmail.com
Wed Oct 29 18:23:15 EDT 2008



On Oct 15, 3:49 pm, Daniel Berger <djber... at gmail.com> wrote:
> Hi all,
>
> Sorry, a bit of a cross-post here,becauseI'mnotsure if this is a
> Rails issue or a gems issue. The problem is that I've got sys-admin
> installed, justnotas agem, and that's causing a problem.
>
> First, some config info:
>
> RubyGems Environment:
>   - RUBYGEMS VERSION: 1.3.0
>   - RUBY VERSION: 1.8.6 (2008-03-03 patchlevel 114) [i386-mswin32_80]
>   - INSTALLATION DIRECTORY: C:/ruby/lib/ruby/gems/1.8
>   - RUBY EXECUTABLE: C:/ruby/bin/ruby.exe
>   - EXECUTABLE DIRECTORY: C:/ruby/bin
>   - RUBYGEMS PLATFORMS:
>     - ruby
>     - x86-mswin32-80
>   -GEMPATHS:
>      - C:/ruby/lib/ruby/gems/1.8
>      - C:/Documents and Settings/djberge/.gem/ruby/1.8
>   -GEMCONFIGURATION:
>      - :update_sources => true
>      - :verbose => true
>      - :benchmark => false
>      - :backtrace => false
>      - :bulk_threshold => 1000
>   - REMOTE SOURCES:
>      -http://gems.rubyforge.org/
>
> irb(main):001:0> require 'sys/admin'
> => true
>
> However, if I try to fire up Rails I get this:
>
> C:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:628:in
> `report_activate_error': Couldnotfind RubyGem sys-admin (>= 0)
> (Gem::LoadError)
>         from C:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:139:in
> `activate'
>         from C:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:163:in
> `activate'
>         from C:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:162:in `each'
>         from C:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:162:in
> `activate'
>         from C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:
> 31:in `require'
>         from C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.1.1/lib/
> active_support/dependencies.rb:510:in `require'
>         from C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.1.1/lib/
> active_support/dependencies.rb:355:in `new_constants_in'
>         from C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.1.1/lib/
> active_support/dependencies.rb:510:in `require'
>          ... 12 levels...
>         from C:/ruby/lib/ruby/gems/1.8/gems/rails-2.1.1/lib/commands/
> server.rb:39
>         from C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:
> 27:in `gem_original_require'
>         from C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:
> 27:in `require'
>         from script/server:3
>
> What's happening here? Problem with my setup or environment? Or a
> problem with Rails?

Ok, I think I've narrow this down a bit. The background to this is
that I've installed the library called "win32-file" via rubygems. That
library has a dependency on win32-file-stat, which in turn has a
dependency on windows-pr, which in turn has a dependency on windows-
api which in turn has a dependency on win32-api.

You with me so far? It's the win32-api gem (or lack thereof) that's
ultimately causing the issue.

You see, I'm using a custom built Ruby using VC++ 8.0, so I had to
uninstall win32-api (because the current binary gem I have out there
is incompatible with my runtime), so that rubygems defaults to the
win32-api I've built by hand and installed in Ruby's sitelibdir. At
least that's what I thought it would do.

And here's where it seems to get confused. Because one of the
dependencies itself has a dependency on win32-api, but I've removed
the win32-api gem, it dies instead of resorting to
gem_original_require as a last ditch effort.

I _think_ this can be resolved by rescuing Gem::LoadError in
custom_require.rb, but I'm still deciding how to proceed.

If anyone has any suggestion in the meantime, I'm all ears.

Regards,

Dan


More information about the Rubygems-developers mailing list