Ruby-3.3.4

Introdução ao Ruby

O pacote "Ruby" contém o ambiente de desenvolvimento "Ruby". Isso é útil para "scripts" orientados a objetos.

Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.2.

Informação do Pacote

  • Transferência (HTTP): https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.4.tar.xz

  • Transferência (FTP):

  • Soma de verificação MD5 da transferência: e696a878d05867a4d28e62fe9afb7862

  • Tamanho da transferência: 16 MB

  • Espaço em disco estimado exigido: 1,4 GB (com documentos de API da C e testes)

  • Tempo de construção estimado: 2,4 UPC (usando paralelismo=4; com documentos de API da C; adicionar 0,4 UPC para testes)

Dependências do Ruby

Exigidas

libyaml-0.2.5

Opcionais

Doxygen-1.12.0, Graphviz-12.1.0, rustc-1.80.1, Tk-8.6.14, Valgrind-3.23.0, Berkeley DB (obsoleto) e DTrace

[Nota]

Nota

Uma conexão com a Internet é necessária para alguns testes desse pacote.

Instalação do Ruby

Instale "Ruby" executando o seguinte comando:

./configure --prefix=/usr         \
            --disable-rpath       \
            --enable-shared       \
            --without-valgrind    \
            --without-baseruby    \
            ac_cv_func_qsort_r=no \
            --docdir=/usr/share/doc/ruby-3.3.4 &&
make

Opcionalmente, construa os documentos da "API" "C" executando os seguintes comandos:

make capi

Para testar os resultados, emita: make -j1 -k check. Observe que a suíte de teste com tarefas paralelas possivelmente cause falha do teste, informada como mensagens enigmáticas de unknown object, resultando em um resumo alegando falsamente all tests passed. Se o ambiente tiver variáveis relacionadas a configurações de proxy (all_proxy, ALL_PROXY, http_proxy e etc.) definidas, a suíte de teste será resgatada antecipadamente com mensagens como net/ftp is not found. Certifique-se de que você desconfigurou essas variáveis para a suíte de teste. Existem mais de 26.000 testes. Alguns testes relacionados ao ipv6 possivelmente indiquem erros. Se os testes forem executados em um diretório que tenha um componente escrevível mundialmente (por exemplo, /tmp), então vários testes adicionais possivelmente falhem.

Agora, como o(a) usuário(a) "root":

make install
[Nota]

Nota

Se você tem aplicativos "Ruby-On-Rails" instalados e fez uma atualização do "Ruby" instalando esse pacote, [então] você pode precisar executar uma atualização lá também (como o(a) usuário(a) "root"):

cd /caminho/para/aplicativo/web/
bundle update rake

e reinicie o servidor "web" que atende o aplicativo.

Explicações do Comando

--disable-rpath: Essa chave desabilita a incorporação de /usr/lib como um caminho de pesquisa de biblioteca no aplicativo ruby. Fazer isso não é necessário (porque /usr/lib é um caminho de biblioteca do sistema) e possivelmente faça com que a suíte de teste executar com a libruby. so do sistema em vez da recém construída quando o Ruby foi instalado.

--enable-shared: Essa chave habilita construir a biblioteca compartilhada "libruby".

--without-baseruby: Essa chave impede usar o ruby do sistema se ele já estiver instalado. O sistema de construção usará a versão recém-construída.

ac_cv_func_qsort_r=no: Essa chave impede usar a função qsort_r proveniente da Glibc. Ruby faz algumas otimizações agressivas assumindo alguns detalhes de implementação do algoritmo de ordenação, mas a suposição não é verdadeira com a implementação da Glibc. Com essa chave, Ruby usará a própria implementação dela de ordenação.

--disable-install-doc: Essa chave desabilita construir e instalar índices "rdoc" e documentos da "API" "C".

--disable-install-rdoc: Essa chave desabilita construir e instalar índices "rdoc".

--disable-install-capi: Essa chave desabilita construir e instalar documentos da "API" "C".

Conteúdo

Aplicativos Instalados: bundle, bundler, erb, gem, irb, racc, rake, rbs, rdbg, rdoc, ri, ruby e typeprof
Bibliotecas Instaladas: libruby.so
Diretórios Instalados: /usr/include/ruby-3.3.0, /usr/lib/ruby, /usr/share/doc/ruby-3.3.4 e /usr/share/ri

Descrições Curtas

bundle

cria pacotes de "Ruby Gems"

bundler

gerencia as dependências de um aplicativo durante todo o ciclo de vida dele

erb

é uma estrutura de interação direta com o(a) usuário(a) em linha de comando para "eRuby", que fornece um sistema de modelos para "Ruby"

gem

é o comando para "RubyGems", que é um sofisticado gerenciador de pacotes para "Ruby". Isso é semelhante ao comando "pip" do "Python"

irb

é a interface interativa para "Ruby"

rake

é um utilitário de construção semelhante ao "make" para "Ruby"

rdbg

é um depurador interativo para "Ruby"

rdoc

gera documentação "Ruby"

ri

exibe documentação a partir de uma base de dados relacionada a classes, módulos e métodos "Ruby"

ruby

é uma linguagem de "script" interpretada para programação orientada a objetos rápida e fácil

libruby.so

contém as funções da "API" exigidas pelo "Ruby"