Этот проект предоставляет установщик для Ruby-2.4 и более поздних версий для Windows на основе набора инструментов MSYS2. Это преемник RubyInstaller на базе MSYS1, который использовался для Ruby-2.3 и старше. Он распространяется по модифицированной лицензии BSD из 3 пунктов.
В отличие от старого RubyInstaller он не предоставляет собственный DevKit, а использует богатый набор библиотек MINGW из проекта MSYS2. Поэтому он хорошо интегрируется в MSYS2 после установки в целевой системе, обеспечивая среду сборки и выполнения для установки драгоценных камней с C-расширениями. Эти и другие изменения задокументированы в CHANGELOG.
Файла установки, отличного от Devkit, достаточно для использования чистых драгоценных камней Ruby или толстых бинарных драгоценных камней для x64-mingw32 или x86-mingw32. Для установки драгоценных камней исходного кода на основе C рекомендуется использовать версию установщика Devkit. Он устанавливает среду сборки MSYS2/MINGW в каталог Ruby, в который входят общие инструменты и библиотеки сборки.
Для некоторых драгоценных камней требуются дополнительные пакеты, которые можно установить через pacman
. См. ниже. Также можно установить MSYS2 вручную с https://msys2.github.io/ и затем запустить ridk install
чтобы добавить нестандартные, но необходимые инструменты разработки. Для автоматической установки Ruby и MSYS2 см. FAQ по шоколадной установке.
ridk
ridk
— это сценарий cmd/powershell, который можно использовать для установки компонентов MSYS2, для выполнения команд MSYS, таких как pacman
, или для установки переменных среды для использования инструментов разработки MSYS2 из работающей оболочки.
Дополнительные параметры см. ridk help
:
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
можно использовать для включения инструментов разработки MSYS2 на работающей консоли. Это делает sh
, pacman
, make
и т. д. доступными в командной строке. Дополнительные инструкции для команды ridk
см. в Wiki.
Базовая установка MSYS2 включает компиляторы и другие инструменты сборки, но не включает библиотеки или библиотеки DLL, которые требуются некоторым драгоценным камням в качестве зависимостей. К счастью, многие необходимые библиотеки доступны в репозиториях MSYS2. Их можно установить с помощью ridk exec pacman -S mingw-w64-x86_64-libraryname
аналогично apt-get
в Linux. Замените префикс mingw-w64-x86_64
на mingw-w64-i686
для 32-битного RubyInstaller.
Например, эти популярные драгоценные камни можно установить из исходного драгоценного камня следующим образом:
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
Некоторые драгоценные камни правильно помечены для установки зависимых библиотек для каждого pacman. Посмотрите вики, как можно добавить такую метку к драгоценным камням. Также обратитесь к FAQ для получения дополнительных рекомендаций по установке.
Этот репозиторий предоставляет задачи упаковки для создания исполняемых файлов установки RubyInstaller и файлов 7zip. Он не компилирует исходники, но использует репозиторий MSYS2-MINGW и репозиторий pacman RubyInstaller2 для загрузки двоичных файлов и зависимых библиотек.
Установщик регулярно создается на основе действий Github для каждого добавления в репозиторий github. Бегун также запускает установщик и запускает на нем все тесты RubyInstaller и Ruby-spec, чтобы мы были уведомлены о критических изменениях. В дополнение к этому, ежедневная сборка последнего снимка разработки Ruby компилируется и упаковывается в виде файлов RubyInstaller. Его можно скачать с релизов GitHub. Ознакомьтесь с вики, как использовать версии Ruby-Head для сборок CI.
ridk install
с параметрами по умолчанию. 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