1

我正在开发一个用于 的 Kotlin Native/Multiplatform 项目linuxArm,使用coroutines-core(1.4.21) 但macosX64在我的 MacBook 上使用目标进行开发。当我最终编译linuxArm64那个 Gradle 时,我感到非常震惊,吐出一堆基本上coroutines-core没有linuxArmXX变体的错误。

我之前编译并运行了一个项目,没有针对linuxArm32linuxArm64目标的协程,并在我的 RPi 3 (linuxArm) 上成功运行了二进制文件。

Roman Elizarov 本人表示,可以从源代码为主机上的替代架构进行编译:Coroutines are not built for arm ( targets linuxArm32Hfp and others) #855

如何做到这一点?我对 Gradle 有基本的了解,并且可以gcc使用命令行“helloworld”,但是从源代码编译整个 KN 依赖项?好像是炼金术。

4

1 回答 1

1

带有 linuxArm64 和 linuxArm32Hfp 的 kotlinx.coroutines

这个 fork 的改动很小,允许构建 linuxArm64 和 linuxArm32Hfp kotlin 原生库。

二进制文件在我的 Maven 存储库中可用: https://h1.danbrough.org/maven

当前可用的版本是:

  • 1.5.2-danbroid
  • 1.5.2-danbroid-native-mt
  • 1.6.0-RC-danbroid

源代码位于: https ://github.com/danbrough/kotlinx.coroutines 和https://github.com/danbrough/kotlinx.atomicfu

于 2021-11-28T21:03:57.360 回答