Haskell FFI for pdflib

时间:2011-04-06 17:25:30

标签: haskell ffi

我正在尝试使用64 linux上的c2hs为pdflib库(pdflib.com)编写ffi。 您可以从他们的网站免费下载pdflib(功能齐全的eval。)

我尝试编译并运行他们的hello.c演示程序,它运行正常。

据我所知,我只需要2个文件才能使其正常工作:pdflib.h和libpdf.a

所以我将它们都放入hello文件夹,写了一个chs文件,它编译并生成hs文件。 但是当我尝试编译我的Hello.hs程序时,cabal抱怨

Cabal:缺少对外国图书馆的依赖: *缺少C库:pdflib

我尝试通过--extra-include-dirs和--extra-lib-dirs给它提供文件夹名称,但它没有帮助。

如何使用pdflib.h和libpdf.a文件编译haskell程序?

2 个答案:

答案 0 :(得分:2)

从评论迁移到答案:

首先:我假设你的cabal文件中有“extra-libraries:pdf”?您需要确保名称精确匹配(即与库文件相同但没有'lib'前缀)。第二,我和.a文件的结果好坏参与,可能是因为我自己的无知,但总是在.so文件中取得成功。 - sclv 19小时前

答案 1 :(得分:0)

链接器需要能够找到您的.a文件。它将在通常的/ usr / lib路径中查找。您可以将pdflib安装到常规系统位置(例如通过包管理器)吗?这将是最简单的途径。