David Bieregger
07/09/2025, 7:20 PMarm64
versions of the binaries such as Node, WASM, and so on. But now I'm a bit stuck with the usage of kotlin-native-prebuilt
which currently doesn't have arm64
versions for neither Linux or Windows
Sooooo I was just wondering if someone of you could just add those two build targets to the build pipeline? I suppose this is not that big of a Hussle, because now we even have arm64
windows Docker images. I would be really grateful for that 🙂
(I know, I can just build it myself and I will probably do that know, but in long term it would really make my life a whole lot easier and eventually)David Bieregger
07/10/2025, 5:37 AMephemient
07/10/2025, 6:15 AMDavid Bieregger
07/10/2025, 9:13 AMsvyatoslav.scherbina
07/10/2025, 10:45 AMCould give me some rough overview or a starting point?Do you mean a starting point for making the Kotlin/Native compiler run on Windows/arm64? Basically, you need to try building the compiler on a Windows/arm64 host, see what is missing/fails and fix this. There are some bigger parts though, like building LLVM and libffi for Windows/arm64.
David Bieregger
07/10/2025, 10:50 AM<https://download.jetbrains.com/kotlin/native/builds/releases/1.9.22/linux-aarch64/>
svyatoslav.scherbina
07/10/2025, 10:53 AMBy starting point, I mean the pipeline configurationWhat do you mean by the "pipeline"?
because when I fixed all of the potential issues I need the artifact hosted under:
Usually you can override this and use artifacts "hosted" locally.Copy code<https://download.jetbrains.com/kotlin/native/builds/releases/1.9.22/linux-aarch64/>
David Bieregger
07/10/2025, 10:56 AMDavid Bieregger
07/10/2025, 11:04 AMsvyatoslav.scherbina
07/10/2025, 11:39 AMIs there no CI/CD pipline that builds those kotlin-native-prebuilt artifacts for each Kotlin release?There is. Unfortunately, it is not open.
David Bieregger
07/10/2025, 11:42 AMsvyatoslav.scherbina
07/10/2025, 3:07 PMare there any internal plans to update the pipeline?What's the point in updating the CI pipeline if those "kotlin-native-prebuilt" artifacts can't be built on/for Windows/arm64 yet?
This is 1 hour of work maxI'm not so sure.
David Bieregger
07/11/2025, 8:04 PMkotlin-native-prebuilt
itself, but the toolchainDependency
, which includes all the OS-specific files like headers. I tried to check that using ChatGPT (https://chatgpt.com/share/68716dcb-3bec-8005-b79d-a132386b97a7) For x64 and x86, this is a stripped-down MSYS2 toolchain. Since April, MSYS2 officially supports Windows ARM64 (link), so replicating the stripping process for ARM64 should mostly be a matter of copying the existing setup. That would produce something like msys2-mingw-w64-arm64-2.zip
.
With that toolchain in place, I can handle the changes in the Kotlin repo and build a custom kotlin-native-prebuilt
. The main blocker is that the MSYS2 toolchain pipeline doesn’t seem to be public (unlike the Linux one, which can be found in tools/toolchain-builder
).
Given that ARM64 seems like an inevitable long-term target, this could be a good opportunity to accelerate support. Do you think it’s possible to allocate some resources toward this?David Bieregger
07/15/2025, 4:45 PMsvyatoslav.scherbina
07/26/2025, 1:12 PMthe core issue isn’tNot quite correct. You need to build all compiler native dependencies for Windows ARM64, in particular LLVM and libffi.itself, but thekotlin-native-prebuilt
, which includes all the OS-specific files like headers.toolchainDependency
Do you think it’s possible to allocate some resources toward this?The harsh reality is that the Kotlin/Native compiler team at JetBrains is quite small and spread thin. The team backlog is stuffed with critical-priority projects. We can't really afford allocating any resources toward this at the moment. It is a good opportunity for the community to contribute.