2017-08-16 43 views
1

我使用c2hs來簡化將Haskell綁定到C/C++庫的過程。我最近也開始使用堆棧來管理我的Haskell項目。要求堆棧將額外的命令行參數傳遞給c2hs

要使用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文件進行哪些更改?

回答

1

在cabal文件中的庫或可執行部分(取決於您的項目)下的include-dirs字段中添加您的位置應使其工作。