Ruby-3.3.0

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.1.

Informação do Pacote

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

  • Transferência (FTP):

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

  • Tamanho da transferência: 16 MB

  • Espaço em disco estimado exigido: 774 MB (com testes e documentos de API da C)

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

Dependências do Ruby

Exigidas

libyaml-0.2.5

Opcionais

Doxygen-1.10.0, Graphviz-10.0.1, rustc-1.76.0, Tk-8.6.13, Valgrind-3.22.0, Berkeley DB (obsoleto) e DTrace

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.0 &&
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 executar a suíte de teste com tarefas paralelas possivelmente cause falhas de teste geradas como mensagens enigmáticas de unknown object, resultando em um resumo alegando falsamente all tests passed. Se o ambiente tiver variáveis relacionadas às configurações de proxy (all_proxy, ALL_PROXY, http_proxy e etc.) configuradas, a suíte de teste será resgatado mais cedo com mensagens como net/ftp is not found. Portanto, certifique-se de desconfigurá-las para a suíte de teste. Existem mais de 26.000 testes. 12 testes são conhecidos por falharem devido a certificados expirados nos dados de teste. 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.0 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"