Rails 3.0 on Cygwin
Rails 3.0 requires 1.8.7 or later. Both InstantRails and the (current, released) version of RubyInstaller bundle Ruby 1.8.6. The files on the Ruby site seem to be a scavenger hunt. While the next release of RubyInstaller will address this, we can run today with Cygwin.
On the right of the Cygwin page you will find a link to “Install Cygwin now”. The UI for the installation is a little unusual, the basic process is documented here.
When you get to step 15 (yes, step 15), you will want to select the following:
- ruby
- sqlite3
- libsqlite3-devel
- wget
- make
- gcc
- git
- curl
Hint: I find it is easiest to first click on view (top right) to get a alphabetical list of all packages, then use the search box (top left) to filter the list, and then select the individual packages.
Cygwin itself provides a minimal shell window. You can use the Console program to give you a nicer window. This program doesn’t have a proper installer, instead you simply unzip the file you downloaded. In the directory that produced, create a shortcut to the Console executable (right click on Console, select “Create shortcut”) and then drag that shortcut out to some place where you can find it later (e.g., desktop or quick launch toolbar). Launch a Console window using this shortcut to see a Windows command prompt. Select Edit -> Settings, and set the shell to C:\cygwin\bin\bash -l
. Select OK, then exit and relaunch the console and you now have a bash prompt.
Notepad++ is a free editor that understands Unix conventions. Select and run the installer from here. Launch Notepad++, and from there navigate to your bash configuration file:
File → Open → Computer → c: → cygwin → home → yourname → .bashrc
Insert the following at the bottom:
alias edit='cygstart "/cygdrive/c/Program Files (x86)/Notepad++/notepad++.exe"'
You might need to adjust this path slightly. On Windows XP, for example, I don’t seem to have the “ (x86)” part. Once complete, save the file. Now close any open Console windows and launch a new one. Inside that console, execute the following commands:
wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz tar xzf rubygems-1.3.5.tgz cd rubygems-1.3.5 ruby setup cd .. gem install sqlite3-ruby
Now you can install rails normally (gem install rails), or checkout the latest using git. You can now edit files (e.g., config/database.yml
) using the alias you set up:
edit config/database.yml
Results following the scenario described in AWDwR3 closely match results on Ubuntu.