Supported platforms

Kotlin supports the following platforms and provides target presets for each platform. See how to use a target preset.

Target platform

Target preset

Comments

Kotlin/JVM

jvm

Kotlin/JS

js

Select the execution environment:

  • browser {} for applications running in the browser.

  • nodejs{} for applications running on Node.js.

Learn more in Setting up a Kotlin/JS project.

Android applications and libraries

android

Manually apply an Android Gradle plugin – com.android.application or com.android.library.

You can only create one Android target per Gradle subproject.

Android NDK

androidNativeArm32, androidNativeArm64, androidNativeX86, androidNativeX64

The 64-bit target requires a Linux or macOS host.

You can build the 32-bit target on any supported host.

iOS

iosArm32, iosArm64, iosX64, iosSimulatorArm64

Requires a macOS host.

watchOS

watchosArm32, watchosArm64, watchosX86, watchosX64, watchosSimulatorArm64

Requires a macOS host.

tvOS

tvosArm64, tvosX64, tvosSimulatorArm64

Requires a macOS host.

macOS

macosX64, macosArm64

Requires a macOS host.

Linux

linuxArm64, linuxArm32Hfp, linuxMips32, linuxMipsel32, linuxX64

Linux MIPS targets (linuxMips32 and linuxMipsel32) require a Linux host.

You can build other Linux targets on any supported host.

Windows

mingwX64, mingwX86

WebAssembly

wasm32

Last modified: 16 November 2021

© 2010–2021 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/mpp-supported-platforms.html