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
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
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"
|