Está com pressa? Vá direto para o resumo!
Para trabalhar com Ruby e Rails é necessário instalar alguns pacotes.
Primeiro:
sudo apt-get install ruby rdoc ri irb
Descrição dos pacotes instalados via man:
ruby – Interpreted object-oriented scripting language
rdoc1.8 – Generate documentation from Ruby script files
ri1.8 – Ruby Information at your fingertips
irb1.8 – interactive ruby
ruby -v
ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux]
irb -v
irb 0.9.5(05/04/13)
Agora vou até o site do RubyGem no RubyForge baixar a ultima versão do mesmo.
Instalar o pacote RubyGem do Ubuntu nem sempre é uma boa idéia…
wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
tar xvzf rubygems-1.3.1.tgz
cd rubygems-1.3.1/
sudo ruby setup.rb
gem1.8 -v
1.3.1
Vamos criar um link simbólico para o comando gem
sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
Este link simbólico é para que quando você digitar o comando “gem” ele chame o “gem1.8″
ls -l /usr/bin/ | grep gem
gem - > /usr/bin/gem1.8
gem1.8
Beleza, ruby instalado, gem instalado, agora vamos tentar instalar o Rails.
sudo gem install rails
rails -v
Rails 2.1.2
Agora vamos testar se o Rails está funcionando corretamente (se não falta alguma coisa a ser instalada).
Vamos criar um projeto novo.
rails Teste
cd Teste/
script/generate scaffold User nome:string idade:integer
Ops, o primeiro problema, esqueci de instalar o ssl do ruby.
/usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/initializer.rb:229:in `require_frameworks': no such file to load -- openssl (RuntimeError)
from /usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/initializer.rb:118:in `process'
from /usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/initializer.rb:97:in `send'
from /usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/initializer.rb:97:in `run'
from /home/gcaixeta/Projetos/Teste/config/environment.rb:13
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/lib/ruby/gems/1.8/gems/rails-2.1.2/lib/commands/generate.rb:1
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from script/generate:3
Vamos instalalo via apt-get
sudo apt-get install libopenssl-ruby
Novamente vamos tentar gerar o scaffold de exemplo.
script/generate scaffold User nome:string idade:integer
Agora vamos tentar rodar o migrate.
ops, esqueci de instalar o sqlite3
rake aborted!
no such file to load -- sqlite3
Vamos instalar primeiro o programa sqlite3
sudo apt-get install sqlite3
Depois o gem
sudo gem install sqlite3-ruby
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
Ops, deu problema na instalação da gem. Ela precisa compilar extensões nativas em C, então tenho que ter instalado os compiladores básicos.
sudo apt-get install build-essential
novamente vamos tentar instalar o gem
sudo gem install sqlite3-ruby
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
/usr/bin/ruby1.8 extconf.rb install sqlite3-ruby
extconf.rb:1:in `require': no such file to load -- mkmf (LoadError)
from extconf.rb:1
ops, faltou instalar o pacote dev do ruby
sudo apt-get install ruby-dev
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
/usr/bin/ruby1.8 extconf.rb install sqlite3-ruby
checking for fdatasync() in -lrt... yes
checking for sqlite3.h... no
ops, faltou instalar o pacote de desenvolvimento do sqlite3
sudo apt-get install libsqlite3-dev
Novamente. vamos tentar instalar o gem do sqlite3
sudo gem install sqlite3-ruby
Building native extensions. This could take a while...
Successfully installed sqlite3-ruby-1.2.4
1 gem installed
Installing ri documentation for sqlite3-ruby-1.2.4...
Installing RDoc documentation for sqlite3-ruby-1.2.4...
Finalmente!
rake db:migrate
script/server
Instalando o Básico
sudo apt-get install ruby rdoc ri irb libopenssl-ruby sqlite3 build-essential ruby-dev libsqlite3-dev
Instalando o Ruby Gem
wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
tar xvzf rubygems-1.3.1.tgz
cd rubygems-1.3.1/
sudo ruby setup.rb
sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
Instalando as Gems
sudo gem install rails sqlite3-ruby
Instalando o mongrel
Instalando o suporte mysql
sudo apt-get install libmysqlclient15-dev
sudo gem install mysql
Update1:
Testei o tutorial da versão Hardy(8.04), a unica diferença é que não há um pacote chamado “ruby-dev”, ao invés deste, utilize o “ruby1.8-dev”
Update2:
Para testar tudo:
rails Teste
cd Teste/
script/generate scaffold User nome:string idade:integer
rake db:migrate
script/server
http://localhost:3000/users