Premake Project Manager

From Qt Wiki
Jump to navigation Jump to search
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

Premake is a build configuration tool allowing user to describe C, C+, or C# software project using a simple, easy to read syntax. Main features are:

  • Declarative syntax based on Lua
  • Full power of general purpose language (Lua) available for non-trivial tasks
  • Generation of project files for popular IDEs including Visual Studio and Xcode, which don’t require presence of Premake executable on actual build host
  • Support for flexible build configuration, exposed to user as configure-style options
  • Support for cross-compilation
  • Distributed as small sized single executable without external dependencies
  • Unlimited extensibility – define new APIs, build tools, or even change behavior of build system internals from within your project!
  • Support for building Qt projects - see [1]

This plugin allows user to open, browse, build, and debug Premake projects inside Qt Creator.


You can get binary version for Windows from [2]. For other operating systems, or if you want bleeding edge version, get the source code:

git submodule init
git submodule update

and follow instruction in README file.


Open project file "premake4.lua" in Qt Creator just like you open .pro files.

Simple Qt project

require "qt-support"

solution "MyApplication"
 configurations { "Debug", "Release" }

 project "MyApplication"
 kind "WindowedApp"
 language "C''+"
 uses "Qt"
 files {
 configuration "Debug"
 flags { "Symbols" }

 configuration "Release"
 flags { "Optimize" }

More documentation

More complex examples

Current status

Right now plugin is of "beta" quality.

Works on Linux, Mac OS X, and Windows

  • Source compatible with Qt Creator 2.3, 2.4, and 2.5
  • Allows to open and browse premake4.lua projects
  • Allows to change toolchains and Qt versions from GUI
  • Imports build configurations from project file
  • Includes basic Lua editor to simplify project writing

What is missing

  • -Run configurations are not created automatically for built executables- Available in master
  • No project create/import wizard
  • Debugging from IDE on Windows is broken