【问题标题】:Asking stack to pass extra command-line arguments to c2hs要求堆栈将额外的命令行参数传递给 c2hs
【发布时间】:2017-08-16 06:04:40
【问题描述】:

我使用c2hs 来简化将 Haskell 绑定编写到 C/C++ 库的过程。我最近也开始使用堆栈来管理我的 Haskell 项目。

要使用 c2hs,我需要在我的 Haskell 源代码中添加一行 #include "myheader.h";这里myheader.h 是我的 C/C++ 库的接口文件。

我今天发现,除了将 #include 行嵌入到 .chs 源文件中,还可以在调用 c2hs 时传递头文件的位置,如下所示

c2hs /<path-to-my-header>/myheader.h Foo.chs

值得庆幸的是,当文件具有 .chs 扩展名时,堆栈会自动检测,然后对其调用 c2hs。我的问题是,我如何告诉堆栈在调用 c2hs 时传递这个额外的命令行参数(即头文件的位置)? 我需要对 .cabal 或 stack.yaml 文件进行哪些更改?

【问题讨论】:

    标签: haskell haskell-stack c2hs


    【解决方案1】:

    在 cabal 文件的库或可执行部分(取决于您的项目)下的 include-dirs 字段中添加您的位置应该可以使其工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-19
      • 2021-06-02
      • 1970-01-01
      • 1970-01-01
      • 2018-10-07
      • 1970-01-01
      • 1970-01-01
      • 2015-06-09
      相关资源
      最近更新 更多