I've just upgraded to Rails 2.1 on my Mac and ran into some problems.
I was upgrading from Rails 1.2.3 and gem 1.0.1 on a Mac OS X 10.5.2 system and I keep my own ruby installation in /usr/local instead of using the Apple supplied version. Rails installed just fine but running 'rails myapp' generated an error.
$ rails myapp
/usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:379:in `report_activate_error': RubyGem version error: rake(0.7.1 not >= 0.8.1) (Gem::LoadError)
My version of gem is supposed to include any dependencies by default and in fact adding the --include-dependencies argument gives a message that it will be ignored. In reality it does not upgrade all the gems that rails depends on. You only find out which ones are missing when you run rails and even then you only reveal them one at a time. This is a mess. I find it hard to believe this bug slipped through the release process so maybe I'm doing something wrong. Please tell me if I am! Part of the problem may be that I jumped from Rails 1.2.3 to 2.1 without installing 2.0
Here is what I did to get Rails 2.1 up and running:
1: Update gem - to 1.1.1 in my case
$ sudo gem update --system
2: Update rails
$ sudo gem update rails
3: Update all of these:
$ sudo gem update rake
$ sudo gem update activesupport
$ sudo gem update activerecord
$ sudo gem update actionpack
$ sudo gem update actionmailer
$ sudo gem update activeresource
Note that I had to install activeresource as that is, I believe, new with Rails 2.0 and so I did not have it to update.
4: Check that you have everything you need by trying to create a dummy rails app
$ rails dummyapp
If that dumps out an error message then install or update that gem and try it again until it generates the application directory tree that you expect.
Archive of Tips
- ► 2013 (26)
- ► 2012 (28)
- ► 2011 (44)
- ► 2010 (40)
- ► 2009 (53)
- ▼ June (5)