👨‍💻 about me home CV/Resume 🖊️ Contact Github LinkedIn I’m a Haskeller 📝 Blog Freedom, privacy, tutorials… 🏆 Best of panda upp Haskell abp pp hCalc bl todo pwd TPG Nextcloud Git BitTorrent

💣 Kick GAFAMs out (✔️ ǝlƃooפ, ✔️ ʞooqǝɔɐℲ, ✔️ uozɐɯ∀): Stop giving our soul and money to evils, be free and respectful!
📰 Friday 2. April 2021: upp is a panda companion. It’s a Lua-scriptable lightweight text preprocessor.
🆕 since December 2020: Playing with the actor model in an embedded multicore context. C imperative components become C stream pure functions with no side effect ➡️ C low level programming with high level pure functional programming properties 🏆
📰 Saturday 30. January 2021: Playing with Pandoc Lua filters in Lua. panda is a lightweight alternative to abp providing a consistent set of Pandoc filters (text substitution, file inclusion, diagragrams, scripts, …).
🆕 Sunday 24. May 2020: Working at EasyMile for more than 4 years. Critical real-time software in C, simulation and monitoring in Haskell ➡️ perfect combo! It’s efficient and funny ;-)
🚌 And we are recruiting! Contact if you are interested in Haskell or embedded softwares (or both).

lapp: Lua Application packager

Christophe Delord - http://cdelord.fr/lapp

Lua Application packager

lapp packs Lua scripts together along with a Lua interpretor (Lua 5.4.3) and produces a standalone executable for Linux and Windows.

lapp runs on Linux and lapp.exe on Windows.

lapp and lapp.exe can produce both Linux and Windows binaries.

No Lua interpretor needs to be installed. lapp contains its own interpretor.


Get lapp sources on GitHub: https://gitbuh.com/CDSoft/lapp, download submodules and run make:

$ git clone https://github.com/CDSoft/lapp
$ cd lapp
$ git submodule sync && git submodule update --init --recursive
$ make


$ make install    # install lapp and lapp.exe to ~/.local/bin

lapp and lapp.exe are single autonomous executables. They do not need to be installed and can be copied anywhere you want.

Precompiled binaries

It is usually highly recommended to build lapp from sources. Precompiled binaries of the latest version are available here:


Usage: lapp [-o OUTPUT] script(s)

    -o OUTPUT   set the name of the output executable

The main script shall be the first one. Other scripts are libraries that can be loaded by the main script.

If OUTPUT ends with .exe then lapp produces a Windows binary. Otherwise the output is assumed to be a Linux executable.


Host Target Command
Linux Linux lapp main.lua lib1.lua lib2.lua -o linux_executable
Linux Windows lapp main.lua lib1.lua lib2.lua -o windows_executable.exe
Windows Linux lapp.exe main.lua lib1.lua lib2.lua -o linux_executable
Windows Windows lapp.exe main.lua lib1.lua lib2.lua -o windows_executable.exe

Running linux_executable is equivalent to running lua main.lua.

Running windows_executable.exe is equivalent to running lua.exe main.lua.


lapp requires some external softwares. Some are included in its repository.


This file is part of lapp.

lapp is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

lapp is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with lapp.  If not, see <https://www.gnu.org/licenses/>.

For further information about lapp you can visit