
Premake
Premake is a free, cross-platform command-line tool that reads scripted project definitions and creates project files for development toolsets.
What Premake is
Premake is a free, cross-platform command-line tool that reads scripted project definitions and creates project files for development toolsets. Premake 5.0 generates projects for C, C++, and C#, with built-in generators for CodeLite, GNU Make, Visual Studio, Ninja, and Xcode. It runs on Linux, macOS, and Windows as a self-contained single-file executable, and its documentation says no additional libraries or runtimes are required. A Lua scripting environment automates configuration tasks such as source checkout setup and deployment packaging. Add-on modules can extend support to languages, frameworks, and toolsets. Community modules list integrations for Android Studio, Code::Blocks, Eclipse, NetBeans, SlickEdit, Qt Creator/qmake, CMake, Ninja, and compile_commands.json exporters. Other modules cover Android NDK, Emscripten, Native Client, Windows Runtime, and Xbox 360. Generated projects can support 32-bit and 64-bit builds. Premake’s source is available under the BSD License, with help through Discussions and Stack Overflow. Generated Makefiles do not support a make install step by default.
Good
- Free BSD-licensed source
- Supports Linux, macOS, and Windows
- Generates projects for C, C++, and C#
- Lua scripting automates configuration tasks
- Self-contained executable needs no runtimes
Watch out
- Makefiles lack make install by default
- Some integrations rely on community modules
Who it suits
Premake suits developers who want scripted, repeatable project generation across Linux, macOS, and Windows. It is also useful for teams needing Lua automation or extensible generator modules.
Verdict
Premake centralizes project configuration in scripts and outputs files for several major toolsets. Its broad module ecosystem adds options, while the Makefile installation limitation is worth noting.
Plans and prices
From Premake's own pricing page, checked 11 Oct 2001.
| Plan | Price | What it gives you |
|---|---|---|
| Premake | Free | Single-file command line executable · BSD-licensed source code |
The facts
Each one read from Premake's own pages, with the date it was checked.
What it does
- Build integrations
- The modules list includes CMake and Ninja build system modules and exporters for compile_commands.json.checked 11 Oct 2001
- Extensibility
- Add-on modules can extend Premake with support for additional languages, frameworks, and toolsets.checked 11 Oct 2001
- IDE integrations
- Community modules list support for Android Studio, Code::Blocks, Eclipse, NetBeans, SlickEdit, and Qt Creator/qmake.checked 11 Oct 2001
- Installation
- Premake is distributed as a self-contained single-file command line executable; its downloads page lists Windows, Linux, and macOS binaries.checked 11 Oct 2001
- Languages
- Premake 5.0 can generate projects for C, C++, and C#.checked 11 Oct 2001
- Limits
- The current documentation says generated Makefiles do not support a make install step by default.checked 11 Oct 2001
- Project generators
- Built-in generators include CodeLite, GNU Make, Visual Studio, Ninja, and Xcode.checked 11 Oct 2001
- Purpose
- Premake reads a scripted software project definition and generates project files for toolsets such as Visual Studio, Xcode, and GNU Make.checked 11 Oct 2001
- Scripting
- Premake includes a Lua scripting environment for automating configuration tasks, including source checkout setup and deployment packaging.checked 11 Oct 2001
- Security
- The documentation says Premake requires no additional libraries or runtimes to be installed.checked 11 Oct 2001
- Source license
- Premake's source code is available under the BSD License.checked 11 Oct 2001
- Support
- The site links users to community Discussions and Stack Overflow for help.checked 11 Oct 2001
- Supported builds
- Premake 5.0 generated projects can support 32-bit and 64-bit builds, and Xbox 360 builds through Visual Studio.checked 11 Oct 2001
Where it runs
- Platform modules
- Listed modules add support for Android NDK, Emscripten, Native Client, Windows Runtime, and Xbox 360.checked 11 Oct 2001
Alternatives to Premake
- 1

AWS CodeBuild
Free planWebAPILinuxmacOS7.9From $0.01 a month - 2

fastlane
Free planAndroidiOSLinuxmacOS7.4Free plan - 3

Nx
Free planWebLinuxmacOSSelf-hosted7.2From $29 a month - 4

Bazel
Free planLinuxmacOSWindows6.7Free plan - 5

FASTBuild
Free planLinuxmacOSWindows6.6Free plan - 6
Open Build Service
Free planWebAPILinuxSelf-hosted6.6Free plan
