Binario Standalone
En esta página
Un .zex generado sin flags adicionales aún requiere zolo en la máquina
destino. La flag --standalone resuelve esto: el runtime se concatena al
archivo ZIP, y el ejecutable se localiza a sí mismo mediante el registro EOCD
del ZIP al iniciarse — sin ninguna instalación externa necesaria.
--emit zex --standalone produce un .zex autosuficiente; ejecútalo en
cualquier máquina, incluso sin zolo instalado.
03-standalone.zolo
// Feature: self-contained executable — `--standalone`
// Syntax: `zolo build file.zolo --emit zex --standalone`
// When to use: distribute a `.zex` that runs WITHOUT a separate `zolo`
// install — the runtime is embedded into the archive.
// Run:
// zolo build 31-distribution/03-standalone.zolo --emit zex --standalone
// # the resulting .zex embeds the runtime; double-clicking or running
// # it directly works on a machine that has no `zolo` installed.
//
// How it works: the runtime executable is concatenated with the ZIP
// payload; the program locates its own appended archive via the ZIP
// EOCD record at startup and executes it. (See the archive spec.)
print("I bring my own runtime — no `zolo` needed to run me.")
// Pair with --release for an optimized standalone, and with
// --windowed/--gui (see 04) for a console-free GUI app on Windows.
//
// expected: I bring my own runtime — no `zolo` needed to run me.
Requiere la CLI o el host de Zolo; ábrelo en el playground o ejecútalo localmente.
Para distribución en producción, combina --standalone con --release para
optimización de bytecode:
zolo build app.zolo --emit zex --standalone --release
El archivo de salida queda en target/<nombre>-<versión>.zex (la versión
proviene de zolo.toml, con valor por defecto 0.0.0).
Consulta también