# IMPORTANT - READ THIS FIRST # # Ensure there is the following line at the end of ~/.bash_login # -------------------------------------------------------------- # export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH" # # Source it using: . ~/.bash_login # # This script assumes MySQL 5.x is installed # # Based on: http://hivelogic.com/narrative/articles/ruby-rails-mongrel-mysql-osx # # Setup build environment # ----------------------- sudo mkdir -p /usr/local/src sudo chgrp admin /usr/local/src sudo chmod -R 775 /usr/local/src cd /usr/local/src # Ruby and dependencies # --------------------- # Redline curl -O ftp://ftp.gnu.org/gnu/readline/readline-5.1.tar.gz tar xzvf readline-5.1.tar.gz cd readline-5.1 ./configure --prefix=/usr/local make sudo make install cd .. # Ruby curl -O ftp://ftp.ruby-lang.org/pub/ruby/ruby-1.8.5-p12.tar.gz tar xzvf ruby-1.8.5-p12.tar.gz cd ruby-1.8.5-p12 ./configure --prefix=/usr/local --enable-pthread --with-readline-dir=/usr/local make sudo make install sudo make install-doc cd .. # RubyGems # -------- curl -O http://rubyforge.rubyuser.de/rubygems/rubygems-0.9.2.tgz tar xzvf rubygems-0.9.2.tgz cd rubygems-0.9.2 sudo /usr/local/bin/ruby setup.rb cd .. # Ruby on Rails # ------------- sudo gem install rails --include-dependencies # Mongrel # ------- sudo gem install mongrel --include-dependencies # Subversion # ---------- # 1.3.x curl -O http://subversion.tigris.org/downloads/subversion-1.3.2.tar.gz tar xzvf subversion-1.3.2.tar.gz cd subversion-1.3.2 ./configure --prefix=/usr/local --with-openssl --with-ssl --with-zlib make sudo make install cd .. # 1.4.x (Only use if working with 1.4.x repositories) #curl -O http://subversion.tigris.org/downloads/subversion-1.4.3.tar.gz #curl -O http://subversion.tigris.org/downloads/subversion-deps-1.4.3.tar.gz #tar xzvf subversion-1.4.3.tar.gz #tar xzvf subversion-deps-1.4.3.tar.gz #cd subversion-1.4.3 #./configure --prefix=/usr/local --with-openssl --with-ssl --with-zlib #make #sudo make install #cd .. # Capistrano # ---------- sudo gem install capistrano --include-dependencies # MySQL bindings # -------------- # This will fail but following patch will fix sudo gem install mysql -- --with-mysql-dir=/usr/local/mysql # Patch mkdir -p /usr/local/src/mac-mysql-gem cd /usr/local/src/mac-mysql-gem echo "--- mysql.c.orig 2006-10-13 17:29:40.000000000 +0200 +++ mysql.c 2006-10-13 17:29:53.000000000 +0200 @@ -14,6 +14,8 @@ #include #endif +#define ulong unsigned long + #define MYSQL_RUBY_VERSION 20700 #define GC_STORE_RESULT_LIMIT 20" > mac-mysql-gem.patch cd /usr/local/lib/ruby/gems/1.8/gems/mysql-2.7 sudo ruby extconf.rb install mysql -- --with-mysql-dir=/usr/local/mysql sudo cp mysql.c mysql.c.dist sudo patch mysql.c /usr/local/src/mac-mysql-gem/mac-mysql-gem.patch sudo make sudo make install cd /usr/local/src # SQLite3 # ------- curl -O http://www.sqlite.org/sqlite-3.3.13.tar.gz tar -xvzf sqlite-3.3.13.tar.gz cd sqlite-3.3.13 ./configure --prefix=/usr/local make sudo make install cd .. # Additional Gems (optional) # -------------------------- sudo gem install rails --include-dependencies -v 1.1.6 # Legacy support older rails apps sudo gem install bluecloth --include-dependencies sudo gem install redcloth --include-dependencies sudo gem install sqlite3-ruby --include-dependencies sudo gem install ferret --include-dependencies sudo gem install ZenTest --include-dependencies sudo gem install redgreen --include-dependencies # May want to create a ~/.autotest file with: require 'autotest/redgreen'