FFI和头文件

时间:2015-06-20 17:26:16

标签: import ffi nim

这是我的目录结构:

C:.
│   lodepng.h
│   lodepng.c
│   nim.cfg
│   test.png
│   util.nim
│
└───nimcache

util nim正在从lodepng.h导入一个c函数,如下所示:

proc loadPNG(image: var ptr[cchar], width, height: var cuint, filename: cstring)
  {.importc: "lodepng_decode32_file", header: "lodepng.h".}

但是头文件没有复制到nimcache中,也没有在编译代码时找到。我怎样才能确保nim编译器使用它?

1 个答案:

答案 0 :(得分:1)

我在nim backend integration guide中找到了解决方案:

{.compile: "lodepng.c".}
proc lodepng_decode32_file(image: var ptr[cchar], width, height: var cuint, filename: cstring): cuint {.importc.}