iwtraining

Instalando o Ruby Back-end

Instalando o Ruby

Instalando o Ruby

Neste artigo cobriremos o processo de instalação do Ruby. É comum nos depararmos com dúvidas sobre o por quê de certos passos serem necessários. O objetivo do artigo é, além de dar o passo a passo, esclarecer as considerações por trás das escolhas, para que você mesmo possa criticar a necessidade de cada componente.

Para instalar e usar o Ruby, é necessário um pouco de familiaridade com a linha de comando, conhecer brevemente a estrutura de diretórios do seu sistema operacional (pelo menos já ter visto algumas vezes), executar comandos e conhecer o papel das variáveis de ambiente. Caso esses termos sejam novos para você, faça uma breve pesquisa e siga com o artigo. Apenas familiaridade com os conceitos é necessária para acompanhar o artigo.

Por exemplo, uma recomendação comum é evitar utilizar espaços em branco nos nomes de diretórios para não precisar “escapá-los” toda vez que forem acessados.

Além disso é preciso saber também que existe um mecanismo padrão no Ruby para utilizar bibliotecas/módulos de terceiros (tratam-se de componentes desenvolvidos por terceiros, livremente, fora do escopo e gerenciamento do interpretador principal), chamado RubyGems, onde as bibliotecas são chamadas de gems. Os executáveis do rubygems precisam estar disponíveis junto aos do interpretador para os recursos do Ruby possam ser utilizados completamente.

Antes de instalar o Ruby, precisamos definir qual perfil de uso daremos para o mesmo, ou seja, a sua necessidade. Isso influencia na escolha sobre como instalá-lo. Os principais perfis de uso podem ser agrupados em apenas dois:

  • Simples: adequado para execução de aplicações, onde apenas uma versão do interpretador, gem dependentes e ferramentas associadas, e para desenvolvimento de projetos em pequeno número.
  • Avançada: voltada para ambientes de desenvolvimento mais exigentes, normalmente ao lidar com múltiplos projetos simultâneos que possuam dependências de interpretadores e gems em várias versões, e para ambientes voltados para testes (como servidores de integração contínua).

Vamos discutir agora como instalar o Ruby de modo a atender esses perfis no OSX, Linux e Windows.

OSX

Perfil Simples

Resumo: nenhum.

O OSX vem com binários do Ruby pré-instalados pela Apple. A versão é levemente desatualizada, pois é definida, atualizada e congelada no momento do fechamento de versão do sistema operacional, ficando naturalmente desatualizada ao longo do tempo.

Esse ponto de atenção sobre a versão no OSX não chega a ser uma preocupação para 99% dos casos, pois a linguagem está bastante estável há alguns anos, sem quebras de compatibilidade. É possível desenvolver utilizando a versão pré-instalada sem problemas.

Perfil Avançado

Resumo: instale um gerenciador de versões

Para instalar várias versões do ruby e das gems ao mesmo tempo e alternar entre as versões, é necessário utilizar alguma ferramenta para gerenciar o uso dos binários e fontes corretos independentemente no tempo de execução. As duas principais ferramentas em uso atualmente são:

  • RVM (Ruby Version Manager)
  • rbenv (Ruby Environment)
  • chruby (Changes Ruby)

Cobriremos o rbenv.

É possível instalar o rbenv de várias formas. No OSX, a melhor é através do HomeBrew. Instale-o se ainda não o tiver (será necessário instalar as bibliotecas e ferramentas de desenvolvimento básicas e compiladores, que no OSX são fornecidas pelo XCode. Aceite quando o instalador solicitar essa instalação. Privilégio de administrador será necessário para instalar).

Instale o Homebrew com o seguinte comando:

ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

Depois, instalar o rbenv:

$ brew update
$ brew install rbenv ruby-build

Para que o rbenv seja carregado cada vez que o terminal for aberto, adicione a seguinte linha ao arquivo ~/.bash_profile:

if which rbenv > /dev/null; then eval “$(rbenv init -)”; fi

E, opcionalmente, recarregue o arquivo para começar a usar imediatamente na sessão atual:

$ source ~/.bash_profile

Depois, basta instalar a versão desejada do Ruby. Para instalar a versão 2.0 e configurar para que seja usada como padrão, utilize os seguintes comandos:

$ rbenv install 2.2.3
$ rbenv global 2.2.3

Execute o ruby com o parâmetros -v para que a versão seja exibida. Caso positivo, todos os passos foram feitos corretamente.

$ ruby -v

Para listar todas as versões disponíveis para instalação:

$ rbenv install -l

Note que nessa listagem temos várias versões do Ruby e de outras implementações do interpretador, como o JRuby. Isto ocorre pelo fato do Ruby referir-se tecnicamente como a especificação da linguagem de programação utilizada para desenvolver, mas não é necessário que apenas o interpretador do autor da linguagem seja o único capaz de interpretar o código. Atualmente temos vários interpretadores e discutiremos mais sobre eles posteriormente.

Linux

Perfil Simples

Resumo: utilize os pacotes disponíveis na distribuição

É importante lembrar que cada distribuição e até cada mantenedor de pacotes tem seu próprio método de organização do pacote e a instalação. É recomendável conhecer mais detalhes sobre como isso tudo funciona na distribuição que você usa, assim poderá identificar e corrigir eventuais problemas e fazer ajustes.

Para exemplificar o tipo de detalhe que você deve estar atento, de forma concreta, utilizando o Ubuntu 15.04 (versão mais recente). Nele existe o pacote ruby-full, que é um meta-pacote utilizado para instalar dependências pré-selecionadas automaticamente. Os pacotes dependentes são:

  • ri (Ruby Interactive reference)
  • ruby (interpretador)
  • ruby-dev (cabeçalhos)

Os três serão instalados ao instalar o ruby-full com o comando:

# apt-get install ruby-full

O pacote ruby, por sua vez, também é um meta-pacote que coloca o pacote ruby2.1 como dependência de instalação. Note que a montagem de uma árvore de dependência entre meta-pacotes no Debian e seus derivados (Ubuntu é um deles) é comum para projetos maiores. É no ruby2.1 onde finalmente encontram-se os binários, arquivos de documentação e orientações de overrides para gerenciar binários de mesmo nome já fornecidos pelo pacote ruby.

O pacote ruby2.1 fornece, além do interpretador, os utilitários rake, rdoc, ri, irb e gem, todos na versão 2.1. Discutiremos mais sobre eles posteriormente.

O pacote ruby-dev fornece os cabeçalhos necessários para realizar compilações de extensões do Ruby, ou seja, código escrito em C como ponte para ser acessado via programas em Ruby a instruções de baixo nível, disponível em programas customizados, escritos em C. Nessa biblioteca também é disponibilizado a biblioteca do ruby compilada estaticamente e como shared object (.so) (obs: estes arquivos variam de acordo com a arquitetura do processador).

Perfil Avançado

Resumo: instale um gerenciador de versões

Todas as observações descritas na seção sobre o OSX se aplicam aqui. Instale o pacote que disponibiliza as ferramentas de desenvolvimento e depois instale um gerenciador de versões, como o rbenv.

Para instalar o pacote que contém as ferramentas de desenvolvimento no Ubuntu (privilégio de administrador é necessário):

# apt-get install build-essentials

Depois, para instalar o rbenv, siga as mesmas instruções descritas para OSX.

Windows

O Ruby teve suas origens enraizadas no UNIX, refletindo atualmente sua ótima integração com esses ambientes (principalmente Linux, depois OSX). Mesmo assim, o Ruby funciona bem no Windows, graças aos esforços da comunidade para portá-lo, manter e prover um instalador.

Dado essa preferência natural do Ruby para ambientes UNIX, é possível aumentar o aproveitamento do ambiente de desenvolvimento adequando-o mais ao ambiente UNIX, mesmo no Windows. A forma mais fácil de fazer isso é instalando o sistema de controle de versões Git para Windows, que vem com programas que emulam o interpretador de comandos bash (com o Git BASH), utilizado no Linux e no OSX. Assim a integração é completa e a experiência de desenvolvimento, transparente. Essa recomendação vale para ambos os perfis.

Perfil Simples

Resumo: instale o RubyInstaller

Para executar programas em Ruby e desenvolver projetos, o instalador do projeto RubyInstaller é suficiente. Sua instalação é muito simples. Basta baixar o instalador, executá-lo e seguir as orientações na tela.

Caso seu projeto possua alguma dependência de bibliotecas com extensões nativas, é necessário baixar o kit de desenvolvimento, o DevKit. Baixe a versão correta de acordo com a sua versão do Ruby e arquitetura do processador.

Caso você seja desenvolvedor na plataforma Windows, certamente você já possui os compiladores de C/C++ e as bibliotecas necessária para realizar as compilações necessárias, bastando apenas ajustar o PATH dos utilitários de compatibilidade e dos compiladores. O DevKit é mais recomendado para quem não desenvolve para Windows ou quer configurar rapidamente a partir de um ambiente limpo.

Perfil Avançado

Resumo: instale o uru

O melhor gerenciador de versões do interpretador é o uru (Unleash Ruby). Sua instalação é muito simples. Faça o download, crie um diretório e coloque-o no PATH, copie e execute o instalador do uru dentro desse diretório.

O uru trabalha de forma um pouco diferente: ele gerencia versões previamente instaladas do Ruby, não dispondo de mecanismos de instalação automática, como as outras soluções (RVM, rbenv). Uma vez instalado, o primeiro passo é registrar uma versão:

C:\tools> uru admin add C:\Ruby\22\bin

E para utilizar a versão sob o gerenciamento do uru:

C:\tools> uru 22

Obs: Ao pesquisar na internet, várias referências sobre o projeto pik serão encontradas, até mais facilmente do que sobre o uru, mas o projeto foi descontinuado desde 2012.

Conclusão

Com isso concluímos o artigo cobrindo em detalhes as principais considerações sobre a instalação do ruby nos principais sistemas operacionais. Esperamos ter contribuído com o entendimento e domínio do leitor em cada etapa desse processo.

Está com duvidas?

Aluno iwtraining tem acesso a um fórum exclusivo para discutir com os instrutores e outros alunos. Acesse agora mesmo!

Posts Relacionados

Deixe um comentário