Skip to content
@OneLuaPro

OneLuaPro

OneLuaPro

OneLuaPro is ...

  • a portable, monolithic, and curated distribution of the Lua programming language for the Windows operation system,
  • natively built with Intel® oneAPI C++ compiler,
  • provided as x64 signed binaries and signed installers for Windows 7 to Windows 11,
  • targeted for corporate application scenarios on computers without permanent Internet access.

OneLuaPro is not ...

  • made for compatibility with Lua package managers like luarocks.

OneLuaPro supports ...

  • a modern development workflow via Visual Studio Code using customized extensions (Lua Language Server, Local Lua Debugger). These extensions can be installed from .vsix files found under <INSTALL_PATH>/opt/vscode,
  • an easy entry into the Lua world by providing the ZeroBrane Studio Integrated Development Environment (IDE) and the luacheck linter for static code analysis.

OneLuaPro can ...

  • be built with minimum effort and toolchain-footprint as all its components are prepared for the CMake build infrastructure,
  • be installed entirely without administrative privileges using the released zip-archives,
  • be installed or uninstalled using the provided signed installer packages.

Hardware Requirements & Performance

OneLuaPro is optimized for high-performance numerical computing using modern CPU instruction sets. To achieve the best balance between compatibility and speed, the complete distribution is compiled with Intel oneAPI C-compiler using multi-target dispatching.

Minimum Requirements

  • Intel: 2nd Generation Core processors (Sandy Bridge, 2011) or newer,
  • AMD: Bulldozer-based processors (FX-series, 2011) or newer,
  • OS: Windows 7 SP1, Windows 10, or Windows 11 (required for AVX state management).

Important

CPUs older than 2011 (e.g., Core 2 Duo, 1st Gen i5) are not supported and will result in an "Illegal Instruction" error.

Automatic Hardware Acceleration

All OneLuaPro binaries feature Dynamic Dispatch, meaning they automatically detect your CPU's capabilities at runtime and activate the fastest available code path:

  • AVX (Standard): Provides 256-bit vectorization on older systems (e.g., i5-2xxx/3xxx),
  • AVX2 (Advanced): Enabled automatically on Intel Haswell (4th Gen) and newer, as well as all AMD Ryzen processors,
  • AVX-512 (Ultra): Leverages 512-bit registers on modern Intel Xeon and high-end Core i7/i9 processors (11th Gen+) for maximum throughput.

Download and Installation

Download OneLuaPro from here: https://github.com/OneLuaPro/OneLuaPro/releases

Notice that all executables, all DLL, both installer and uninstaller (in case of NSIS64 option), as well as the MSI-install package are provided as certified code-signed binaries.

Install OneLuaPro using MSI-Package

Double-click the installer and follow the installer wizard. This installer requires administrative rights. A scripted installation or removal is also possible. When launched from an elevated command prompt, the User Account Control prompt will be circumvented.

# Standard non-interactve installation into c:\Program Files\OneLuaPro
msiexec.exe /i OneLuaPro-<VERSION>-x64.msi /qb

# Customized non-interactive installation into c:\Apps\OneLuaPro
msiexec.exe /i OneLuaPro-<VERSION>-x64.msi /qb INSTALL_ROOT="C:\Apps\OneLuaPro"

# Standard non-interactve removal (from default installation path)
msiexec.exe /x OneLuaPro-<VERSION>-x64.msi /qb

# Customized non-interactive removal (from custom installation path)
msiexec.exe /x OneLuaPro-<VERSION>-x64.msi /qb INSTALL_ROOT="C:\Apps\OneLuaPro"

The installer creates or removes entries in the Windows Start Menu and updates the PATH-variable accordingly. Software removal is also possible via Windows Settings "Apps & Features".

Install OneLuaPro using NSIS64-Installer

Double-click the installer and follow the installer wizard. This installer does not require administrative rights. The installer creates entries in the Windows Start Menu and updates the PATH-variable. Software removal is also possible via Windows Settings "Apps & Features".

Install OneLuaPro using ZIP-Archive

Unpack downloaded zip-archive into a directory of your choice. The suggested installation path is c:\Apps, which is typically accessible without administrative rights. Manually extend PATH-variable to the bin directory of your installation, e.g. C:\Apps\OneLuaPro-<VERSION>-x64\bin. Documentation and code examples are located in <OneLuaPro_Install_Path>\share\doc.

Visual Studio Code Integration

First, install OneLuaPro. Then, install all provided extensions either from VSCode Marketplace or from <INSTALL_PATH>\opt\vscode. These code-signed extensions are pre-configured and require no further adjustment.

OneLuaPro VSCode Integration

Important

All extensions assume lua.exe is available in your PATH. Make sure it can be called from any directory.

Notes for Installation on Windows 7

Tip

This section applies to all OneLuaPro releases prior to v5.5.0.0. Starting with this version, all runtime libraries are statically linked.

The provided installer can be used on Windows 7 but may have some flaws, which can be fixed manually:

  • In case the installer complains about PATH environment variable being too long to be extended for OneLuaPro, install without updating the variable and edit PATH manually by adding C:\Program Files\OneLuaPro\bin (or the installation directory of your choice) to the content of PATH.
  • ZeroBraneStudio may complain about a missing DLL (vcruntime140_1.dll). Simply copy this DLL from C:\Program Files\OneLuaPro\bin to C:\Program Files\OneLuaPro\opt\ZeroBraneStudio. This flaw may also occur after installation using the provided ZIP-archive.

OneLuaPro Help Center

Documentation and reference manuals are available via the OneLuaPro Help Center. A link to the Help Center is automatically added to the Start menu entry. You can also access it directly at <INSTALL_PATH>\share\doc\index.html.

Contents of the OneLuaPro Distribution

OneLuaPro comprises not only the Lua programming language binaries, but also a number of mature and widely-used extensions (modules) in their respective most recent version, all of which tailored to OneLuaPro's needs. All version numbers follow the v[Base]-[Commits]-[Hash] format: The first part indicates the stable base version, followed by the number of additional changes since the last release, and a short identifier (hash) of the exact source code.

👉 Are you missing an important Lua extension or Lua library? Please let us know [here](OneLuaPro · Discussions · GitHub). 👈

💎 Core & Language

Extension Purpose Version License
Lua The Lua 5.5 Programming Language v5.5.1-0 License: MIT
lsleep Adds the missing sleep() and usleep() functions to Lua. v1.05-6-g531d702 License: MIT
Penlight Inspired by the Python standard library, this suite of pure Lua tools provides robust utilities for input data handling, functional programming, and OS path management. v1.15.0-32-g2bf88a8 License: MIT
say Lua string hashing library, useful for internationalization v1.4.1-8-gec0f5cf License: MIT
luasystem Platform independent system calls for Lua v0.7.1-13-g6a58a4a License: MIT
lua-utf8 UTF-8 support module for Lua v0.2.1-25-g5b25f4c License: MIT

📊 Data Processing & Formats

Extension Purpose Version License
lcomplex Lua complex numbers support module v1.1.0 License: MIT
luacrc32c Lua bindings for Google's CRC-32C implementation v1.0.1 License: MIT
lua-cjson Fast JSON encoding/parsing module for Lua v2.1.0.19-14-gcc07b69 License: MIT
inifile A simple and complete ini-File Parser for Lua v1.1-2-gf7b742d License
LPeg Parsing Expression Grammars For OneLuaPro v1.1.0-6-g645d404 License: MIT
dkjson JSON module written in Lua v2.11 License: MIT
luaSGF Lua bindings for the Savitzky-Golay-Filter Implementation for data filtering or smoothing v2.0.1 License: MIT
lua-zlib Simple streaming interface to zlib for Lua v1.4-6-gdb5b875 License: MIT
lyaml LibYAML bindings for Lua v6.2.9-0 License: MIT

🗄️ Database Interfaces

Extension Purpose Version License
lsqlite3 Extended lsqlite3 module for Lua: A lightweight SQLite3 wrapper featuring the complete SQLean power-pack v0.9.7-0 License: MIT

🛠️ Development Tools

Extension Purpose Version License
argparse Feature-rich command line parser for Lua inspired by argparse for Python v0.7.2-10-g5f03dcf License: MIT
lua_cliargs Command-line argument parsing module for Lua v3.0.2-14-gdb1aaf6 License: MIT
ldoc Lua documentation generator which can also process C extension source files v1.5.0-27-g5ab93b2 License: MIT
Luacheck Static analyzer and a linter for Lua. It detects various issues such as usage of undefined global variables, unused variables and values, accessing uninitialized variables, unreachable code and more. v1.2.0-44-gd0e4660 License: MIT

🖥️ GUI Development

Extension Purpose Version License
wxLanesBridge A module providing thread-safe communication between wxLua and Lanes via a custom C++ bridge for asynchronous GUI updates v1.0.1 License: MIT
wxLua wxLua is a Lua wrapper for the cross-platform wxWidgets GUI library v3.2.0.2-18-gc5e0cbb License: LGPL v3

🔌 Hardware & System Interfaces

Extension Purpose Version License
luv Bare libuv bindings for Lua v1.52.1-0-38-g9e86223 License
lua-ffi A portable lightweight C foreign function interface (FFI) for Lua, based on libffi v1.3.0-27-g5a97f18 License: MIT
LuaFileSystem Complements the set of functions related to file systems offered by the standard Lua distribution v1.9.0-17-g9fff3d6 License: MIT
lua4882 OneLuaPro gateway to National Instrument's NI-488.2 (GPIB) driver v1.2.3 License: MIT
luadaqmx OneLuaPro gateway to National Instrument's DAQmx driver v0.1.2 License: MIT
librs232 Multi-platform library for serial communications over RS-232 (serial port) v1.0.4-0 License: MIT
lua-term Terminal operations for Lua v0.8-7-g75066e0 License: MIT
MoonUSB Lua binding library for libusb, allowing applications to access and use USB devices. v0.1-30-gebc05a5 License: MIT

🛡️ Maintenance & System

Extension Purpose Version License
distro OneLuaPro Distro Information and Distribution Integrity Checker v2.1.0 License: MIT

🌐 Networking & Security

Extension Purpose Version License
Lua-cURLv3 Lua binding to libcurl v0.3.13-6-gbd885bd License: MIT
lua-openssl OpenSSL bindings for Lua v0.11.1-1-38-gde06c29 License: MIT
luaping The missing ping command for Lua v1.1.1 License: MIT
LuaSocket Network support for the Lua language v3.1.0-76-g7a8bda7 License: MIT
luasec Secure connections to any Lua application or script v1.3.2-17-gcb9e38c License: MIT

🤖 Process Communication & Automation

Extension Purpose Version License
luaCOM Microsoft Component Object Model (COM) binding for Lua v1.4.1-93-g16aebd4 License: MIT

🧪 Software Engineering & Testing

Extension Purpose Version License
luassert Assertion library for Lua v1.9.0-19-ga67e478 License: MIT
lanes Lua Lanes - multithreading in Lua v4.0.0-42-g70389ef License: MIT
mediator_lua Mediator pattern implementation for pub-sub management v1.1.2-0-8-gefa5daf License: MIT
lunit Unit testing for Lua v0.8.2-2-g862e0c3 License: MIT
busted Elegant Lua unit testing v2.3.0-13-g3dde98c License: MIT

🚀 Standalone Apps & Tools

Extension Purpose Version License
DistroCheck Distribution Integrity Checker v2.1.0 License: MIT
ZeroBrane Studio lightweight cross-platform Lua IDE with code completion, syntax highlighting, remote debugger, code analyzer, live coding, and debugging support v2.01-12-g14b97a19 License: MIT

Dependencies

OneLuaPro uses the following libraries:

Dependency Purpose Used by Version License
libffi A Portable Foreign Function Interface Library. lua-ffi v3.8.0-28-g25787509 License: MIT
libusb A library for USB device access. MoonUSB v1.0.30-168-g0d6c6748 License: LGPL v3
libuv Cross-platform asynchronous I/O luv v1.52.1 License: MIT
NI‑DAQmx Provides a high‑performance, unified API for controlling and acquiring data from National Instruments measurement hardware luadaqmx 2026 Q3 See here
NI-488.2 Provides support for customers using NI GPIB controllers and NI embedded controllers with GPIB ports lua4882 2026 Q3 See here
wxWidgets wxWidgets is a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls wxLua v3.2.11 License: LGPL v3
Savitzky-Golay-Filter C implementation of Least-Squares Smoothing and Differentiation by the Convolution (Savitzky-Golay) Method luaSGF v2.0-16-gabed543 License
crc32c Google's implantation of the CRC-32C hashing algorithm luacrc32c v1.1.2-12-g10693bf License
zlib-ng zlib replacement with optimizations for "next generation" systems lua-zlib v2.3.3 License: Zlib
dlfcn-win32 dlfcn-win32 is an implementation of dlfcn for Windows Prerequisite for building lua-ffi v1.4.2-19-g614073d License: MIT
libressl An open-source implementation of the Transport Layer Security (TLS) protocol luasec, lua-openssl v4.3.2 See here
SQLite SQL database engine sqlean v3.53.4 Public Domain
sqlean The ultimate set of SQLite extensions lsqlite3 v0.28.4-16-gf7c1358 License: MIT
brotli Brotli compression format curl v1.2.0 License: MIT
zstd Fast real-time compression algorithm curl v1.5.7 License
nghttp2 HTTP/2 C Library and tools curl v1.70.0 License: MIT
ngtcp2 IETF QUIC protocol implementation curl v1.21.0 License: MIT
nghttp3 HTTP/3 library written in C curl v1.18.0 License: MIT
curl Library for transferring data with URL syntax Lua-cURLv3 v8.21.0 License: MIT
libyaml C library for parsing and emitting YAML lyaml 0.2.6-rc.1 License: MIT

Building OneLuaPro

See instructions in OneLuaPro head repository: https://github.com/OneLuaPro/OneLuaPro

Licenses

See https://github.com/OneLuaPro/OneLuaPro/blob/main/LICENSE.txt.

Popular repositories Loading

  1. OneLuaPro OneLuaPro Public

    Portable Lua Distribution for Windows

    CMake 35

  2. luacom luacom Public

    Forked from davidm/luacom

    Microsoft Component Object Model (COM) binding for Lua

    C++ 5 1

  3. lua lua Public

    Lua scripting language with CMake support

    C 2 1

  4. luaping luaping Public

    ping command for Lua

    C 2

  5. luadaqmx luadaqmx Public

    OneLuaPro access to NI's DAQmx driver.

    CMake 1

  6. lua4882 lua4882 Public

    Access to NI's NI-488.2 (GPIB) driver

    C 1

Repositories

Showing 10 of 65 repositories

Top languages

Loading…

Most used topics

Loading…