在kotlin中使用C库函数

我一直在试图关注这个博客 ,我已经成功地运行了所有的步骤,但是当我运行最后的命令

konanc $COMPILER_ARGS -target macbook src/main/kotlin/logogen.kt -library build/c_interop/png -linkerOpts "-L/usr/local/lib -lpng" -o build/bin/logogen

我得到的错误,说sqrt,pow,fopen,fclose都没有解决

error: unresolved reference: sqrt

这是我的png.def文件

headers = /usr/local/include/png.h stdio.h stdlib.h string.h math.h

导入它作为我的logogen.kt文件

import png.*

谢谢!

你用什么替换$COMPILER_ARGS ? 据推测,你通过那里定义那些C参考和哪些是你的程序所需的C库。 例如,对于sqrt未定义的引用,您可以添加“-lm” 。 编译器告诉你缺少的东西也一样。