Waarom LUA naar EXE converteren?
Om een .lua-script te distribueren naar gebruikers zonder een Lua-installatie, moet de runtime met het script worden gebundeld. Verpakken naar .exe presenteert de tool als een normale Windows-applicatie en verwijdert elke afhankelijkheid van een geïnstalleerde Lua op de doelmachine.
Hoe LUA naar EXE te converteren
srlua FREE
Voer glue.exe lua.exe yourscript.lua output.exe uit om het script te bundelen met een gestripte Lua-runtime in een zelfstandig .exe-bestand. Scripts die native C-bibliotheken require hebben nog steeds die .dll-bestanden nodig naast het uitvoerbare bestand.
luastatic FREE
Voer luastatic yourscript.lua liblua.a -I/path/to/lua/include uit om het script en de Lua-afhankelijkheden statisch te koppelen in een native uitvoerbaar bestand. Vereist LuaRocks en een C-compiler zoals MinGW.
Over deze formaten
Een LUA-bestand is broncode geschreven in Lua, een lichtgewicht scripttaal die in 1993 werd gecreëerd. Elke code-editor (VS Code, Notepad++) opent het voor lezen of bewerken. Om het uit te…
Open .LUA details →Een EXE-bestand is een uitvoerbaar programma voor Windows. Dubbelklik op Windows op het bestand om het uit te voeren. Gebruik op Mac of Linux CrossOver of Wine - EXE-bestanden draaien niet…
Open .EXE details →Kwaliteit & waar op te letten
- srlua sluit de originele Lua-broncode in binnen de
.exe; het script kan worden geëxtraheerd met een hex-editor. luastatic compileert naar native code en is moeilijker te reverse-engineeren, hoewel niet onmogelijk. - Externe Lua-modules en native
.dll-bestanden worden niet automatisch gebundeld door srlua en moeten samen met de.exeworden gedistribueerd. - luastatic op Linux of macOS produceert een ELF- of Mach-O-binair bestand, geen
.exe. Bouw op het doelplatform om het juiste binaire type te krijgen.
Veelgestelde vragen
Heeft de doelmachine Lua geïnstalleerd nodig om de .exe uit te voeren?
Wat is het verschil tussen srlua en luastatic?
Kan ik een script bundelen dat externe bibliotheken gebruikt?
.dll-bestanden naast de .exe worden geplaatst.