OCRA für Ruby ist veraltet: Verwenden Sie OCRAN
Wenn Sie OCRA (One-Click Ruby Application) suchen, um aus einem Ruby-Skript eine .exe zu machen: OCRA wird leider nicht mehr gepflegt. Die letzte Version, 1.3.11, erschien im März 2020, und laut Changelog unterstützt sie Ruby 2.2 bis 2.7. Der gepflegte Nachfolger ist OCRAN, ein Fork von OCRA für Ruby 3.2 und neuer. Sie verwenden OCRAN genauso wie OCRA und mit denselben Optionen. Der Umstieg dauert deshalb meist nur ein paar Minuten.
Warum OCRAN
OCRA wurde von Lars Christensen entwickelt und war viele Jahre lang das übliche Werkzeug, um Ruby-Programme als Windows-Programme zu verpacken. Ich pflege OCRAN, das 2023 als Fork von OCRA entstanden ist, gemeinsam mit weiteren Mitwirkenden. Neben der Unterstützung neuer Ruby-Versionen erstellt OCRAN inzwischen auch ausführbare Dateien unter Linux und macOS und kann ein Verzeichnis, ein Zip-Archiv oder ein macOS-App-Bundle ausgeben.
Umstieg von OCRA auf OCRAN
1. OCRAN installieren. Dafür wird Ruby 3.2 oder neuer benötigt.
gem install ocran
2. ocran statt ocra aufrufen. Ihre bisherige Kommandozeile bleibt gleich:
# vorher
ocra script.rb --output myapp.exe --icon app.ico --gem-full
# nachher
ocran script.rb --output myapp.exe --icon app.ico --gem-full
Was gleich bleibt: Alle Kommandozeilenoptionen von OCRA 1.3.11 gibt es in OCRAN unter demselben Namen, zum Beispiel --output, --icon, --windows, --console, --no-lzma, --gemfile, --no-dep-run, --add-all-core, --chdir-first, --dll, --innosetup, --debug-extract und die --gem-*-Optionen. Zusätzliche Dateien und Argumente nach -- funktionieren wie bisher. Auch die Abhängigkeiten werden weiterhin erkannt, indem Ihr Skript während des Builds ausgeführt wird.
Was sich unterscheidet: Wenn Ihr Code OCRA beim Namen nennt, benennen Sie es um.
| OCRA | OCRAN |
|---|---|
ENV["OCRA_EXECUTABLE"] |
ENV["OCRAN_EXECUTABLE"] |
defined?(Ocra) |
defined?(Ocran) |
app = MyApp.new
app.main_loop unless defined?(Ocran)
base_dir = File.dirname(ENV["OCRAN_EXECUTABLE"].to_s)
Falls Sie noch Ruby 3.0 oder 3.1 verwenden: OCRAN 1.3.17 ist die letzte Version, die diese unterstützt.
gem install ocran -v 1.3.17
Mehr über OCRAN
In meinem Beitrag OCRAN: Ruby-Skripte als ausführbare Programme für Windows, Linux und macOS beschreibe ich die Ausgabeformate, die Erkennung der Abhängigkeiten und die Neuerungen der letzten Versionen. Die Dokumentation finden Sie im README auf GitHub, Probleme können Sie im Issue-Tracker melden.