A flexible cmake builder for LuaJIT.
This project requires several external tools for building and cross-compilation:
- Purpose: Used as a cross-compilation toolchain for building LuaJIT for various targets.
- Version: 0.16.0
- Toolchain File:
Utils/zig.toolchain.cmake - Installation: Install Zig from ziglang.org
- Purpose: Required for cloning the repository and managing source code.
- Installation: Usually pre-installed on macOS. For other systems, install from git-scm.com
- Purpose: Used to run 32-bit Windows executables on non-Windows systems during the build process.
- Usage: Referenced in
Utils/Darwin.wine.cmakefor macOS builds. - Installation: Install Wine from winehq.org
Use a GNU compatible make.
make -DLUAJIT_DIR=... or mingw32-make -DLUAJIT_DIR=... or
gnumake -DLUAJIT_DIR=....
Note: When use mingw32-make, please change \\ to / in file path on Windows.
Use cmake to compile.
cmake -H. -Bbuild -DLUAJIT_DIR=...
make --build build --config Releaseadd_subdirectory(luajit-cmake)
target_link_libraries(yourTarget PRIVATE luajit::lib luajit::header)Look samples at lua-forge
make iOSmake Androidmake WindowsThe library also supports cross-compilation for HarmonyOS. Please refer to the toolchain files in Utils/ directory for HarmonyOS specific configurations.
make OHOSNote: The i386 architecture is deprecated for macOS (remove from the Xcode build setting: ARCHS). So I use mingw-w64 and wine to build and run 32 bits minilua and buildvm.