Kotlin/Native - 如何使用 C 库和 Klib 文件?
Kotlin/Native - How to Use a C Library and Klib file?
我是 Kotlin/Native 的新手,因为我想很多其他人都是新手,并且希望使用 Kotlin 的 C 库。那里有文档和一些教程,可以让您达到 85% 并且只是错过了标记。是的,在我问这个问题之前,我试着阅读了所有内容。
在 Kotlin 中使用 C 库的流程很容易找到。
1) 创建.def 文件---好的!
2) 在 .def 文件上使用工具 cinterop 创建 .klib 文件 -- OK
----现在你如何使用它?---
具体来说,现在我们有了一个 .klib 文件,将其命名为 "XXX.klib",我们如何导入符号?
是否应该使用 gradle 并添加 klib 文件的依赖项?
是否有用于放置 .Klib 的默认文件夹结构?
有人应该知道如何将 Klib 与包关联起来吗?
当时我在 gradle 遇到的问题是我真的不明白我正在做的事情与您在互联网上找到的事情有什么关系。有人只是说..."Here's my gradle file" 有时确实弊大于利,因为仅仅复制它并不能使您变得更聪明。
我看过 link
https://medium.com/androidiots/the-magic-of-kotlin-native-part-2-49097c2dea1a
我也看了一个非常接近我的问题的答案
Adding a `.klib` library to kotlin multiplatform
但答案不尽如人意。
Here 是官方参考的一部分,涵盖了 Kotlin 库的概念。它还解释了如何在命令行中使用它。
关于Gradle。在Kotlin/Native的情况下,可以写成task to generate C wrappers automatically. To make self more familiar with Gradle scripts applied to Kotlin/Native I strongly recommend one to have a look at samples from the compiler's repository.
我是 Kotlin/Native 的新手,因为我想很多其他人都是新手,并且希望使用 Kotlin 的 C 库。那里有文档和一些教程,可以让您达到 85% 并且只是错过了标记。是的,在我问这个问题之前,我试着阅读了所有内容。
在 Kotlin 中使用 C 库的流程很容易找到。
1) 创建.def 文件---好的!
2) 在 .def 文件上使用工具 cinterop 创建 .klib 文件 -- OK
----现在你如何使用它?---
具体来说,现在我们有了一个 .klib 文件,将其命名为 "XXX.klib",我们如何导入符号?
是否应该使用 gradle 并添加 klib 文件的依赖项? 是否有用于放置 .Klib 的默认文件夹结构? 有人应该知道如何将 Klib 与包关联起来吗?
当时我在 gradle 遇到的问题是我真的不明白我正在做的事情与您在互联网上找到的事情有什么关系。有人只是说..."Here's my gradle file" 有时确实弊大于利,因为仅仅复制它并不能使您变得更聪明。
我看过 link https://medium.com/androidiots/the-magic-of-kotlin-native-part-2-49097c2dea1a
我也看了一个非常接近我的问题的答案 Adding a `.klib` library to kotlin multiplatform
但答案不尽如人意。
Here 是官方参考的一部分,涵盖了 Kotlin 库的概念。它还解释了如何在命令行中使用它。
关于Gradle。在Kotlin/Native的情况下,可以写成task to generate C wrappers automatically. To make self more familiar with Gradle scripts applied to Kotlin/Native I strongly recommend one to have a look at samples from the compiler's repository.