【发布时间】:2011-10-20 12:17:07
【问题描述】:
假设我有一个已编译的共享 Haskell 库 (Linux)。我可以在上面使用 System.Posix.DynamicLinker(dlopen 和 dlsym)来获得实际可调用的 Haskell 函数吗?如果是这样,将什么字符串传递给 dlsym (我认为 Haskell 函数名称在某种程度上被弄乱了)以及如何将返回的 FunPtr 转换为 Haskell 函数?我认为至少 Haskell 运行时必须做类似的事情。
有人做过这样的事吗?
【问题讨论】:
-
您需要将要调用的函数“导出”。
-
阅读 FFI 规范,它解释了很多。