Cabal:用源代码构建dir

时间:2011-12-17 06:21:23

标签: haskell cabal

我有一个src目录。在这个目录中,我有Main.hs个文件和Test目录。在Test目录中,我有Test.hs个模块。我需要用cabal编译它。

在我的cabal文件中,我有:

Executable main
  -- .hs or .lhs file containing the Main module.
      Main-is: src/Main.hs  

  -- Modules not exported by this package.
     Other-modules: Test.Test

当我cabal configure时,没关系,但是当我尝试cabal build时,我收到以下错误:

cabal build
Preprocessing executables for main-0.0.1...
cabal: can't find source for Test/Test in ., dist/build/autogen

如何使用Main.hs文件正确构建.hs和其他一些目录?

谢谢。

1 个答案:

答案 0 :(得分:22)

如果在Test.Test中定义src/Test/Test.hs,则需要

hs-source-dirs: src

在Cabal文件的“可执行文件”部分中。请注意,您的main-is文件路径应该相对于源目录,因此在这种情况下,您应该将其更改为Main.hs