Examples
Single Lua file
luastatic main.lua /usr/lib/x86_64-linux-gnu/liblua5.2.a -I/usr/include/lua5.2
Embed library.lua for require(“library”)
luastatic main.lua library.lua /usr/lib/x86_64-linux-gnu/liblua5.2.a -I/usr/include/lua5.2
C library containing luaopen_()
luastatic main.lua library.a /usr/lib/x86_64-linux-gnu/liblua5.2.a -I/usr/include/lua5.2
Dynamically link with Lua
luastatic main.lua -llua5.2 -I/usr/include/lua5.2
Statically link with musl libc
CC=musl-gcc luastatic main.lua /usr/lib/x86_64-linux-musl/liblua5.2.a -I/usr/include/lua5.2 -static
Cross compile for Windows
CC=x86_64-w64-mingw32-gcc luastatic main.lua /usr/x86_64-w64-mingw32/lib/liblua5.2.a -I/usr/x86_64-w64-mingw32/include/lua5.2/
LuaJIT 2.0.4 on Ubuntu 16.10
luastatic main.lua /usr/lib/x86_64-linux-gnu/libluajit-5.1.a -I/usr/include/luajit-2.0 -no-pie
LuaJIT on macOS
luastatic main.lua /opt/local/lib/libluajit-5.1.a -I/opt/local/include/luajit-2.0 -pagezero_size 10000 -image_base 100000000
Generate the C file but don’t compile it
CC="" luastatic main.lua
Lua using Homebrew
”`sh
Install Lua and LuaRocks from Homebrew.
brew install lua luarocks
Install luastatic from LuaRocks.
luarocks install luastatic