我正在编写一个使用inline-c
的FFI重型库,构建过程是:
inline-c
文件上运行GHC,生成C 问题:目前我在makefile中执行上述操作(请参阅http://caniuse.com/#feat=viewport-units),但我想将其打包成Cabal文件(工作版:https://github.com/ocramz/petsc-hs/blob/master/makefile} )。
子问题:
~
无法正常工作提前感谢所有指针
答案 0 :(得分:2)
如何控制Cabal中的构建/链接序列?
您可以在cabal文件中使用Build-Type: Custom
,并使用自定义Setup.hs
控制所有内容。
查看您可以控制的所有阶段的UserHooks
data type。
一些例子:
autoconfUserHooks
让cabal运行configure
脚本confHook
:https://stackoverflow.com/a/32679607/866915 Cabal是否支持相对路径?无法在指南中找到这个并且像bash一样〜没有工作
如果您的库位于您的cabal软件包的外部,我会考虑在Unix / Linux系统上使用pkg-config
让cabal找到该库。请参阅此SO问题的答案:How to specify dependency on external C library in .cabal?
如果您的图书馆是您的图书馆资料包的一部分,请查看此博客文章和相关的github repo,其中显示了如何编写自定义Setup.hs文件以在适当的地方构建和安装图书馆: