Este projeto fornece um instalador para Ruby-2.4 e mais recente no Windows baseado na cadeia de ferramentas MSYS2. É o sucessor do RubyInstaller baseado em MSYS1 que foi usado para Ruby-2.3 e versões anteriores. Ele é licenciado sob a Licença BSD Modificada de 3 cláusulas.
Em contraste com o antigo RubyInstaller ele não fornece seu próprio DevKit, mas faz uso do rico conjunto de bibliotecas MINGW do projeto MSYS2. Portanto, ele se integra bem ao MSYS2 após a instalação no sistema de destino para fornecer um ambiente de construção e tempo de execução para instalação de gems com extensões C. Esta e mais alterações estão documentadas no CHANGELOG.
O arquivo do instalador não Devkit é suficiente para usar gemas Ruby puras ou gemas binárias gordas para x64-mingw32 ou x86-mingw32. Para instalar gems de origem baseadas em C, é recomendado usar a versão do instalador Devkit. Ele instala um ambiente de construção MSYS2/MINGW no diretório Ruby que fornece ferramentas e bibliotecas de construção comuns.
Algumas gems requerem pacotes adicionais, que podem ser instalados por pacman
. Veja abaixo. Também é possível instalar o MSYS2 manualmente em https://msys2.github.io/ e executar ridk install
posteriormente para adicionar ferramentas de desenvolvimento não padrão, mas necessárias. Para instalação autônoma de Ruby e MSYS2, consulte o FAQ chocolatey install.
ridk
ridk
é um script cmd/powershell que pode ser usado para instalar componentes MSYS2, para emitir comandos MSYS como pacman
ou para definir variáveis de ambiente para usar ferramentas de desenvolvimento MSYS2 a partir do shell em execução.
Veja ridk help
para mais opções:
Usage:
C:/Ruby24-x64/bin/ridk.cmd [option]
Option:
install Install MSYS2 and MINGW dev tools
exec < command > Execute a command within MSYS2 context
enable Set environment variables for MSYS2
disable Unset environment variables for MSYS2
version Print RubyInstaller and MSYS2 versions
use Switch to a different ruby version
help | --help | - ? | / ? Display this help and exit
ridk enable
pode ser usado para habilitar ferramentas de desenvolvimento MSYS2 no console em execução. Isso torna sh
, pacman
, make
etc. disponíveis na linha de comando. Consulte o Wiki para obter mais instruções sobre o comando ridk
.
A configuração básica do MSYS2 inclui compiladores e outras ferramentas de construção, mas não inclui bibliotecas ou DLLs que algumas gemas exigem como dependências. Felizmente, muitas das bibliotecas necessárias estão disponíveis nos repositórios MSYS2. Eles podem ser instalados por ridk exec pacman -S mingw-w64-x86_64-libraryname
semelhante ao apt-get
no Linux. Troque o prefixo mingw-w64-x86_64
por mingw-w64-i686
pelo RubyInstaller de 32 bits.
Por exemplo, essas gemas populares podem ser instaladas da seguinte forma a partir da gema de origem:
sqlite3
: ridk exec pacman -S mingw-w64-x86_64-sqlite3
gem install sqlite3 --platform ruby
nokogiri
: ridk exec pacman -S mingw-w64-x86_64-libxslt
gem install nokogiri --platform ruby -- --use-system-libraries
Algumas gemas são devidamente rotuladas para instalar bibliotecas dependentes por pacman. Veja no wiki como esse rótulo pode ser adicionado às gemas. Consulte também o FAQ para recomendações adicionais de instalação.
Este repositório fornece as tarefas de empacotamento para construir executáveis de configuração do RubyInstaller e arquivos 7zip. Ele não compila nenhuma fonte, mas utiliza o repositório MSYS2-MINGW e o repositório RubyInstaller2 pacman para baixar binários e bibliotecas dependentes.
O instalador é construído regularmente em ações do Github para cada push para o repositório do github. O executor também executa o instalador e executa todos os testes do RubyInstaller e ruby-spec nele, para que sejamos notificados sobre alterações importantes. Além disso, uma compilação diária do instantâneo de desenvolvimento Ruby mais recente é compilada e empacotada como arquivos RubyInstaller. Ele pode ser baixado nas versões do github. Verifique o wiki sobre como usar versões ruby-head para suas compilações de CI.
ridk install
com opções padrão set PATH=%PATH% ; " c:Program Files (x86)Inno Setup 6 "
git clone https://github.com/larskanis/rubyinstaller2
cd rubyinstaller2
bundle install
rake -T
rake ri:ruby-3.0.5-x86-msvcrt:archive-7z
^ ^ ^ ^ ^- "archive-7z" => 7z archive of the rubyinstaller files
| | | | "installer-inno" => executable installer file
| | | '------- "msvcrt" => older type of C standard library
| | | "ucrt" => new type of C standard library
| | '------- "x86" => 32 bit ruby and MSYS2 version
| | "x64" => 64 bit version
| '------ "x.x.x" => ruby version to build
| "head" => latest development snapshot of ruby
'------ "ri" => RubyInstaller without Devkit
"ri-msys" => RubyInstaller with MSYS2 based Devkit
packages/ri-msys/recipes/installer-inno/rubyinstaller-devkit--.exe
packages/ri/recipes/archive-7z/rubyinstaller--.7z