Alguém já tentou instalar ruby ??& rubygems de fonte no Ubuntu (de preferência Ubuntu 9)?

StackOverflow https://stackoverflow.com/questions/1250329

Pergunta

O site Ruby on Rails recomenda instalar o Ruby de fonte no Linux. Eu encontrei uma série de problemas de biblioteca C construção rubi de fonte em uma instalação limpa do Ubuntu 9.

Todas as instruções que encontrei na net sobre a instalação de rubi no Ubuntu envolveram usando o rubi pré-embalados (baseado em .deb). Claramente este não é o que os trilhos pessoas recomendam.

Quando eu fiz uma fonte compilação limpa de rubi achei Rubygems não conseguiu instalar porque a extensão zlib não funcionou.

Dois problemas ocorrer:

1) A extensão zlib não é construído.

Solução:

i) assegurar zlib é comentada no arquivo de configuração dentro do diretório extn da fonte de rubi, e

ii) garantir esses pacotes zlib ubuntu estão instalados:

aptitude install zlib1g
aptitude install zlib1g-dbg
aptitude install zlib1g-dev
aptitude install zlibc

2) Após a fixação Problema 1 acima (e fazer uma limpeza reconstrução de rubi), zlib ainda não funcionar porque a extensão não for carregado.

Você pode ver que o módulo não carrega executando este e recebendo a saída "false":

puts require 'zlib'

Eu observei isso acontece com qualquer número de outras extensões C no diretório extn, por isso parece ser um problema mais geral com estas extensões do que específica zlib-apenas algo.

Para resumir:

  • Meu construção de rubi encontra a extensão C zlib específico-ruby, mas ele não consegue carregar o módulo zlib.
  • Este comportamento parece acontecer com outras extensões in / extn.

Existe uma maneira que eu possa descobrir por que um módulo não carrega? algum tipo de traço / verbose modo?

Foi útil?

Solução

Não vejo qual é seu problema. Você diz que require 'zlib' retornos false. Mas isso significa que ele fez trabalho! Se houve um erro, você teria uma exceção LoadError.

Outras dicas

Aqui está o que eu fiz para instalar rubi, gemas e trilhos no Ubuntu 11.04

  • Instale rubi de fontes

  • Instale RubyGems a partir de fontes

  • Instale zlib:
    • sudo apt-get install zlib1g-dev
    • cd your-rubi-sources / ext / zlib
    • ruby ??extconf.rb
    • make
    • sudo make install
  • Instale readline:
    • sudo apt-get install libreadline5-dev
    • cd your-rubi-sources / ext / readline
    • ruby ??extconf.rb
    • make
    • sudo make install
  • Instale OpenSSL:
    • sudo apt-get install libssl-dev
    • cd your-rubi-sources / ext / openssl
    • ruby ??extconf.rb
    • make
    • sudo make install

Você instalar libzlib-ruby? Aqui está a minha inicialização típico Ubuntu antes de instalar Rubygems:

$ apt-get update
$ apt-get dist-upgrade
$ apt-get install build-essential -y
$ apt-get install rsync -y
$ apt-get install ruby ri rdoc irb ri1.8 ruby1.8-dev libzlib-ruby zlib1g libopenssl-ruby -y
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top