我们如何将Haskell与OSRM库一起使用?

时间:2017-07-30 20:55:12

标签: haskell ffi osrm

我们希望使用libOSRM进行路由。目前我们正在调用其http服务。为了获得更好的性能,我想调用它的动态库。在阅读Haskell FFI时,我想我可以使用我的Haskell代码编译并链接其源代码(而不是编译的动态库)。 1.哪种方法更好? 2.我如何做每个替代方案?

请注意,OSRM充满了结构,我不知道如何导入haskell。 c2hsc没有安装(cabal引发错误!)。另一方面,我不知道如何链接OSRM的整个来源。

2 个答案:

答案 0 :(得分:2)

我通过API和ABI兼容的C包装器原型化了一些Haskell绑定:libosrmc

随意尝试并发送拉取请求。它仅暴露了API的一小部分,基于OSRM版本5.4;你可能需要投入一些时间。但整体架构和想法仍然适用。 Here是Haskell绑定。

我建议两次考虑使用Haskell而不是发送HTTP请求来进行libosrm / FFI方式:如果值得麻烦的话,请提前预测。

答案 1 :(得分:0)

您可以查看https://github.com/daniel-j-h/hosrm-qa该项目仅限PoC,并使用HTTP OSRM API而不是Haskell FFI。