kotlinnative调用C静态库-创新互联
准备环境
10年积累的成都网站建设、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有城固免费网站建设让你可以放心的选择与我们合作。- 安装fedora31
- 编译kotlin native
- 创建 hello.h 头文件,在其中输入如下代码
#ifndef HELLO_H
#define HELLO_H
void sayHello();
#endif
- 创建hello.c文件,在其中输入如下代码
#include "hello.h"
#include
void sayHello()
{
printf("Hello Kotlin Native\n");
}
- 编译hello.c,生成静态链接库
mkdir lib
gcc -c hello.c
ar rcs lib/libmyhello.a hello.o
创建hello.def文件
headers=hello.h headerFilter=hello.h package=hello staticLibraries = libmyhello.a #静态库的名称 libraryPaths= /tmp/kotlin/lib #静态库的搜索路径
libmyhello.a会包含进同cinterop生成的hello.klib文件中
- 执行如下命令用以分析hello.h文件,并自动生成kotlin定义
cinterop -def hello.def -compiler-option -I. -o hello
- 命令执行后的结果
- 创建main.kt文件
import hello.*
fun main(args: Array)
{
sayHello()
}
- 编译main.kt
kotlinc main.kt -library hello -o main
执行文件
- 参考链接
https://github.com/plter/SimpleKotlinNativeCallCDemo
https://github.com/JetBrains/kotlin-native/blob/master/INTEROP.md
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
新闻名称:kotlinnative调用C静态库-创新互联
链接分享:http://scgulin.cn/article/edosh.html