Начало работы с Kotlin/Native с помощью компилятора командной строки
Получение компилятора
Компилятор Kotlin/Native доступен для macOS, Linux и Windows. Он доступен как инструмент командной строки и входит в стандартную дистрибуцию Kotlin, его можно загрузить с страницы релизов на GitHub. Он поддерживает различные целевые платформы, включая iOS (arm32, arm64, симулятор x86_64), Windows (mingw32 и x86_64), Linux (x86_64, arm64, MIPS), macOS (x86_64), Raspberry PI, STM32, WASM. Полный список целевых платформ здесь. Хотя кросс-платформенная компиляция возможна (использование одной платформы для компиляции на другую), в этом случае мы будем нацеливаться на ту же платформу, на которой ведется компиляция.
Хотя выходной код компилятора не имеет зависимостей или требований к виртуальной машине, сам компилятор требует Java 1.8 или более поздней версии среды выполнения.
Установите компилятор, распаковав его архив в каталог по вашему выбору и добавив путь к его каталогу /bin в переменную среды PATH.
Написать программу "Hello Kotlin/Native"
Приложение будет выводить "Hello Kotlin/Native" в стандартный вывод. В каталоге по вашему выбору создайте файл с именем hello.kt и вставьте в него следующее содержимое:
fun main() {
println("Hello Kotlin/Native!")
}
Компиляция кода из консоли
Для компиляции приложения используйте загруженный компилятор для выполнения следующей команды:
kotlinc-native hello.kt -o hello
Значение опции -o указывает имя выходного файла, поэтому этот вызов должен сгенерировать файл hello.kexe (Linux и macOS) или hello.exe (Windows) бинарного файла. Полный список доступных опций компилятора см. в справочнике по опциям компилятора.
Хотя компиляция из консоли кажется лёгкой и понятной, она не масштабируется для больших проектов с сотнями файлов и библиотек. Для проектов в реальной практике рекомендуется использовать систему сборки и IDE.
© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/native-command-line-compiler.html