How to Create a Kotlin Native Application

The same firm that created the Kotlin programming language, JetBrains also created the open-source Kotlin Native technology. Kotlin, which is generally recognized as a statically typed programming language for the Java Virtual Machine (JVM), enables the developers to create the native programs for a variety of platforms.

By extending Kotlin’s capabilities outside JVM, Kotlin Native gives the programmers the ability to natively run the Kotlin code on a variety of platforms including macOS, iOS, Linux, Windows, and embedded systems. Because there is no requirement for a virtual machine or interpreter, the developers may create the Kotlin code once and deploy it natively on a variety of operating systems. Today, we will discuss the method to create a Kotlin Native application via the IntelliJ Idea.


Ensure that you have the following conditions met before you start the creation of a Kotlin Native Application at your end:

Installed Kotlin Compiler

Utilize an IDE that’s compatible with Kotlin to set up the Kotlin compiler for your computer’s operating system from the trusted Kotlin website. The Kotlin-compiler-1.8.22.zip file, the most recent version, may be downloaded from GitHub releases. The independent compiler should be unzipped into a folder. The scripts that are required to build and execute Kotlin on Windows, macOS, and Linux may be found in the bin folder.

The bin folder may optionally be added to the system path using the “Environment Variable” utility of your system as shown in the following illustration. You can use the “New” button to add any path to the system variables, as we did in the case of Kotlin Compiler. Use the “Ok” button followed by the “Apply” button at the last opened window.

Installed and Configured Kotlin Native Plugin

Ensure that you already have the Kotlin Native plugin installed as well as set up if you’re employing an IDE like IntelliJ IDEA or Android Studio. Now, if you are a beginner user of Kotlin IntelliJ Idea, you don’t need to worry. Just open your installed IntelliJ Idea, and you will find the different menus at the taskbar of IntelliJ as shown in the following illustration.

Move within the “Tools” menu, followed by the “Kotlin” option from the drop-down list. After hovering over the “Kotlin” option, you will find the several options within it. Tap the “Configure Kotlin Plugin Updates” option from the opened list.

A new “Settings” window for IntelliJ Idea will be opened. To access the “Early Access Preview” option, choose it from the drop-down menu that appears before the “Update Channel” option. A new version of the Kotlin plugin is displayed beneath it. Hit the “Install” button that appears, at last, to start setting it up.

Wait until it completes the installation process.

After the successful installation of the Kotlin Plugin, it’s time to restart the IntelliJ Idea tool to activate the Kotlin Plugin.

Create the New Kotlin Project

Now, it’s high time to create a new Kotlin Native project within the IntelliJ Idea tool right after the installation of the Kotlin Native plugin. You must do this using the “File” option which can be found at the taskbar’s top left corner in the IntelliJ Idea window. Press on it to reveal the available options. Now, use the “New” option available within it and hit the “Project” option from the new list of menus.

A window named “New Project” will pop up on your current IntelliJ Idea screen. You don’t have to use the “New Project” option from the left pane. When you have a look at the other available options on the left side of this new window, you may find the “Kotlin Multiplatform” option here. Tap on it to see the options it provides. Now, you can name the project and specify its working directory. For now, we apply the default settings. The necessary thing to do here is to select the project template. Make sure to select the “Native Application” from the available three options and hit the “Next” button.

At the very next screen, you have to move forward with the default configuration of choosing the “app” option of a project and using the “Kotlin.test” checkbox. Use the “Finish” button to complete this process of creating a native project.

When a dialog box like the following appears on your screen, you have a choice to open your new native project within the same window or in a new window:

A default file “Main.kt” is created by the IntelliJ Idea that presents a sample code to display the sample “hello” string using the main() function of Kotlin.

Write the Kotlin Native Code

Now, it’s necessary to add the code of our requirement for the system that we want to create via the Kotlin programming. The following code uses the cube() function to find out the “cube” of an integer number “n” and return the result to the main() method. The main() method declares a variable “n” with value of “7” and invokes the “cube” function by passing it the variable “n” as an argument. The resultant value that is returned by the “cube” function is saved to the “res” variable and is displayed via the “println” function.

After writing your desired code in the code area of the IntelliJ Idea tool, make sure to save it before debugging. After saving the code, tap the “build.gradle.kts” file from the “src” folder of this project and ensure that the latest version of the Kotlin plugin is mentioned.

Now, to build this project, use the “Build” menu that is available alongside the “Run” option that is available in the taskbar of your tool. Use the “Build Project” option from the list that appears.

The output of the native program is displayed in the console.


Kotlin Native, in general, gives the developers the ability to make use of their Kotlin expertise and create high-performance, platform-specific apps without compromising the advantages of a cutting-edge and expressive programming language. It creates new opportunities for code reuse and multi-platform development and makes it possible for programmers to target several platforms with a single codebase as we discussed.

About the author

Saeed Raza

Hello geeks! I am here to guide you about your tech-related issues. My expertise revolves around Linux, Databases & Programming. Additionally, I am practicing law in Pakistan. Cheers to all of you.