Reputation: 6728
Background
I am maintaining the content of a Ruby On Rails site, but I really have no experience with Rails.
When trying to run the Rails server: rails s
I get this:
Could not find activesupport-3.2.0 in any of the sources
Run
bundle install
to install missing gems
I run bundle install
Gem::InstallError: factory_girl requires Ruby version >= 1.9.2. An error occured while installing factory_girl (3.2.0), and Bundler cannot continue.
Make sure that
gem install factory_girl -v '3.2.0'
succeeds before bundling.
Okay, I install factory_girl as per the instructions:
Successfully installed factory_girl-3.2.0 1 gem installed
Run bundle install again:
Gem::InstallError: factory_girl requires Ruby version >= 1.9.2. An error occured while installing factory_girl (3.2.0), and Bundler cannot continue. Make sure that
gem install factory_girl -v '3.2.0'
succeeds before bundling.
Do you have any idea?
Info
Yesterday I got a cross-tread error when trying to run rails server. So as per this SO advice I advice I've nuked RVM and installed rbenv and bundler instead of RVM.
I have tried with both Ruby 1.9.3-p125 and 1.9.3-rc1
Output of gem list
shows factory_girl as installed.
Output of gem environment
shows the problem might has something todo with ruby 1.9.1 being installed also?
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.10
- RUBY VERSION: 1.9.3 (2011-09-23 patchlevel -1) [x86_64-darwin11.3.0]
- INSTALLATION DIRECTORY: /Users/andreas/.rbenv/versions/1.9.3-rc1/lib/ruby/gems/1.9.1
- RUBY EXECUTABLE: /Users/andreas/.rbenv/versions/1.9.3-rc1/bin/ruby
- EXECUTABLE DIRECTORY: /Users/andreas/.rbenv/versions/1.9.3-rc1/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-11
- GEM PATHS:
- /Users/andreas/.rbenv/versions/1.9.3-rc1/lib/ruby/gems/1.9.1
- /Users/andreas/.gem/ruby/1.9.1
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- "gem" => "--no-ri --no-rdoc"
- REMOTE SOURCES:
- http://rubygems.org/
Upvotes: 3
Views: 13410
Reputation: 131
Try reinstalling all the gems with the following command:
bundle install --redownload
Upvotes: 3
Reputation: 16619
Make sure all the gems you are installing is in the Gemfile, because if the gem is not added to the Gemfile, even if you installed it manually, your Rails app is not getting it.
Sample Gemfile would be
gem 'rails', '3.0.0'
gem 'mysql2', '< 0.3'
gem 'rails3-jquery-autocomplete'
#authorization
gem 'authlogic'
gem 'hoptoad_notifier'
#reporting
gem 'lazy_high_charts'
group :test do
gem 'rspec', '2.0.0'
gem 'rspec-rails', '2.0 '
gem "test-unit"
end
Upvotes: 0
Reputation: 6728
@jdoe answered in the comments. And it worked. Apparently I needed to delete Gemfile.lock
.
I don't know why or how though. I am just posting this here, until @jdoe shows up and collects his points with a real answer.
Upvotes: 2
Reputation: 4117
First things first - I have no experience with rbenv.
One of the nice things with RVM is that it helps make fairly explicit what the moving parts of your Ruby environment are.
rvm list will give you a list of Rubies rvm gemset list will give you a list of gemsets (this should not be necessary if using bundler)
Now, here are a few tricky things:
In addition, before anything else, you should run bundle check to see what bundler has to say about your gems.
Upvotes: 0