lua-to-exe
lua-to-exeis part of theluaToEXEproject suite.
Introduction
lua-to-exe provides a Python library for packaging .lua files into standalone .exe executables.
- The conversion process is powered by
srlua. - Platform limitation: Windows 32/64-bit.
- Supports multiple Lua versions.
The generated executable files can run without any external DLLs. - Includes a GUI interface implemented with Tkinter.
Installation
Install via pip:
pip install lua-to-exe
Directory Structure
.../lua_to_exe/
__init__.py
lua_to_exe.py
srlua/
5.1.5-64/
srlua.exe
srglue.exe
5.4.6-64/
srlua.exe
srglue.exe
...
You can provide multiple Lua interpreter versions under the
srluadirectory.
Usage
1. Python API
Import
import lua_to_exe # Note: use underscore, not `-`
Convert Lua Script to EXE
Default conversion (using Lua 5.1.5-64)
lua_to_exe.lua_to_exe("hello.lua", "hello.exe")
Specify Lua Version
lua_to_exe.lua_to_exe("hello.lua", "hello.exe", lua_version="5.4.6-64")
- The
lua_versionparameter is optional. - If not specified,
"5.1.5-64"is used by default. - The value must match a valid subdirectory under
srlua/.
List All Available Lua Versions
versions = lua_to_exe.all_available()
print(versions) # Example output: ['5.1.5-64', '5.4.6-64']
2. Graphical User Interface (GUI)
Launch the GUI:
lua_to_exe.gui()
Features:
- Select the Lua script and output EXE path.
- Choose the Lua version (from available versions).
- View tool and Lua version info in the window.
- One-click conversion with status feedback.
API Reference
lua_to_exe(lua_file, exe_file, lua_version='5.1.5-64')
Converts a .lua file into a standalone .exe executable.
lua_file(str): Path to the input Lua script.exe_file(str): Path for the output exe file.lua_version(str, optional): Name of the Lua runtime folder, must exist undersrlua/.- Raises
RuntimeErroron error.
all_available()
Returns a list of all available Lua versions (i.e., those with both srlua.exe and srglue.exe present).
gui()
Launches the graphical interface for interactive conversion.
Notes
- Only supports Windows 64-bit.
- Each
srlua/<version>/subdirectory must contain bothsrlua.exeandsrglue.exefor that version. - The available Lua versions are determined by the actual subfolders under
srlua/. - If no version is available, conversion will not be possible.
Example
import lua_to_exe
# List all available Lua versions
print(lua_to_exe.all_available())
# Convert hello.lua to hello.exe using default Lua version
lua_to_exe.lua_to_exe("hello.lua", "hello.exe")
# Convert using a specific Lua version
lua_to_exe.lua_to_exe("hello.lua", "hello.exe", lua_version="5.4.6-64")
# Launch the graphical interface
lua_to_exe.gui()
For more details, please refer to the GitHub repository.
Metadata
Release files for lua-to-exe 1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lua_to_exe-1.0.tar.gz | 14.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lua_to_exe-1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.3 MB
Release files / lua_to_exe-1.0.tar.gz
| Download URL | lua_to_exe-1.0.tar.gz |
|---|---|
| Size | 14.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c74457d9a9ef9e94bd9be2f564f9a598260f149d9251d4c911d7366b4d30a60d
|
|
BLAKE2b-256 checksum How to use checksums |
7bf4141fcf95fb27fd6baca3eb6c5dc598f7288468561313c3401af6dd4be907
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.4
|
Release files / lua_to_exe-1.0-py3-none-any.whl
| Download URL | lua_to_exe-1.0-py3-none-any.whl |
|---|---|
| Size | 14.2 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3352d37223eac39e94821f6c0957f905767f77684bf39eabdda9695928b909af
|
|
BLAKE2b-256 checksum How to use checksums |
431349b88d5c946f6ca321ccf868cd68fed01f1b2ef0b260f9b6123c12376e66
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.4
|