Skip to main content


Selects the compiler, linker, etc. which are used to build a project or configuration.

toolset ("identifier")

If no toolset is specified for a configuration, the system or IDE default will be used.


identifier is a string identifier for the toolset. Premake includes the following toolsets by default.

Toolset identifierDescription
dmdReference D Compiler
dotnetThe system's default C# compiler
gccGNU Compiler Collection
gdcGNU Compiler Collection D Compiler
ldcLLVM D Compiler
mscMicrosoft C/C++ compiler

If a specific toolset version is desired, it may be specified as part of the identifer, separated by a dash. See the examples below.

Applies To

Project configurations.


Premake 5.0 and later. Versions are currently only implemented for Visual Studio 2010+.


Specify version 110 of the Windows platform toolset.

toolset "msc-v110" -- or...
toolset "v100" -- for those more familiar with Visual Studio's way

Use Clang/C2 with Visual Studio

toolset "msc-llvm-vs2014"

Use the toolset for Windows XP

toolset "v140_xp"