Giter Club home page Giter Club logo

luart's Introduction

LuaRT

Lua VM 5.4.6 Windows LuaRT license Codacy Badge
Twitter Follow

Lua multipurpose programming framework to develop Windows applications

Banner

Features | Installation | Documentation | Supporting | Links | License

🔹Features

Lua for Windows, with batteries included

  • Multipurpose programming framework with optimized Lua runtime library for x86 and x64 Windows.
  • Build Windows desktop or console applications with Lua.
  • Lightweight with no other dependencies
  • Develop in Lua, C programming knowledge is not needed
  • Batteries included : UTF8 strings, sockets, GUI, compression, audio, graphics...
  • LuaRT runs on Windows Vista, Windows 7, Windows 8, Windows 10 and Windows 11.

Complete development environment

  • rtc: a Lua script to executable compiler
  • QuickRT: a powerful Lua REPL
  • LuaRT Studio: a Lua/LuaRT IDE for Windows to develop and debug desktop/console applications

🔹Installation

🔃 Updating LuaRT

If you have already installed LuaRT and want to update to latest release version, you can use one of those two methods :

  • Run the LuaRT Update application from the Windows Start menu
  • From the File menu of LuaRT Studio, choose Check for LuaRT update

Method 1 : Release package 📦

The preferred way to install LuaRT is to download the latest release package available on GitHub, and run the setup executable. It will install the LuaRT binaries, create the Windows Start menu shortcuts for the IDE and REPL, and update the PATH system variable. It's the easiest and fastest way to start developing with LuaRT.

Method 2 : Building from sources (Visual C++) ⚙️

All you need to build LuaRT from sources is a valid installation of Visual C++ compiler (Mingw-w64 GCC compiler is supported but is deprecated and might be removed in next releases). Before proceeding, be sure to have a valid Visual Studio (Build Tools, Community, Professional or Enterprise) installation. Release packages are built using Visual Studio Build Tools 2022.

First open a console using x86 Native Tools Command Prompt (for LuaRT x86) or x64 Native Tools Command Prompt (for LuaRT x64) shortcuts in your Windows Start menu. Then clone the LuaRT repository (or manualy download the repository but don't forget submodules in the tools\ folder) :

git clone --recurse-submodules https://github.com/samyeyo/LuaRT.git

Go to the \src directory and type nmake:

  • nmake : Build LuaRT library and executable
  • nmake debug: Build debug versions of LuaRT library and executables
  • nmake clean : Clean all the generated binaries

Method 3 : Building from sources (Mingw-w64) ⚙️

Building LuaRT from sources using the Mingw-w64 GCC compiler is deprecated and might be removed in next releases. Compilation have been successfully reported for Mingw-w64 GCC 8.1.0, Mingw-w64 GCC 11.2.0 and Mingw-w64 GCC 12.2.0 (ie the latest Mingw-w64 10.0.0 runtime).

First clone the LuaRT repository (or manualy download the repository but don't forget submodules in the tools\ folder) :

git clone --recurse-submodules https://github.com/samyeyo/LuaRT.git

Then go to the \src directory and type one of the following commands : make, or make -j4 to speed up the compilation on multicore CPU:

  • make : Build LuaRT library and executable using the default x64 platform
  • make -j4 : Speed up building with multithreaded compilation
  • make PLATFORM=x86: Build LuaRT library and executable using the x86 platform
  • make debug: Build debug versions of LuaRT library and executable using the default x64 platform
  • make PLATFORM=x86 debug: Build debug versions of LuaRT library and executable using the default x86 platform
  • make clean : Clean all the generated binaries

Update PATH environment variable

If everything went right, the \bin folder will contain the LuaRT toolchain :

  • lua54.dll : the LuaRT shared library, ABI compatible with the standard lua54.dll
  • luart.exe : the LuaRT console interpreter
  • wluart.exe: the desktop LuaRT interpreter
  • luart-static.exe: the LuaRT console interpreter, without lua54.dll dependency
  • wluart-static.exe: the desktop LuaRT interpreter, without lua54.dll dependency
  • rtc.exe : the Lua script to executable compiler
  • wrtc.exe : the GUI front-end for rtc

You must now add the \bin\ directory to the system PATH (set it accordingly to your LuaRT path), for example :

SET PATH=%PATH%;"C:\LuaRT\bin"

🔹Usage

luart.exe [-e "statement"] [filename] [arg1 arg2...]
wluart.exe [-e "statement"] [filename] [arg1 arg2...]

-e "statement"
Executes the Lua statement in double quotes and exits.

filename [arg1 arg2...]
Loads and executes the Lua script in "filename", with optional arguments (each will be available in the global table arg in Lua).

To get started with LuaRT and make your first steps, follow the Getting started tutorial

🔹Supporting

There have been many hours of hard work put into LuaRT. Your support will be greatly appreciated!

ko-fi

🔹Links

🔹License

LuaRT is copyright (c) 2024 Samir Tine. LuaRT is open source, released under the MIT License. See full copyright notice in the LICENSE.txt file.

luart's People

Contributors

samyeyo avatar mochaap avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.