cabal build --ghc-option = -ddump-minimal-imports不会为main生成导入文件

时间:2016-03-17 09:51:00

标签: haskell ghc cabal

ddump-minimal-imports是一个很有价值的工具。我无法使其适用于我的cabal文件中的可执行文件和测试套件。

在我的cabal文件中我有:

test-suite testDatas6forTestDataItem
    type:       exitcode-stdio-1.0
    main-is:    Datas6TestDataItemTest.hs
    build-depends:
       base -any,
       time,
       monads-tf, 

    default-language: Haskell2010
    hs-source-dirs: ., srcexe
    ghc-options: -threaded  -ddump-minimal-imports

我在dist文件夹中找到了模块的导入文件,但测试和主电源没有。 是这个

  • 由于我的一些错误?
  • 故意行为?
  • 某些技术限制的结果?

谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

我怀疑他们被释放了,而不是你想象的那样,所以我进行了一次实验并证实了这一点。我分叉kazu的test example package然后将额外的最小导入标志添加到cabal文件中,如下所示:

Test-Suite doctest
  Type:                 exitcode-stdio-1.0
  ...
  ghc-options: -threaded  -ddump-minimal-imports

Test-Suite spec
  Type:                 exitcode-stdio-1.0
  ...
  ghc-options: -threaded  -ddump-minimal-imports

文件 显示在distdist/build/doctest/doctest-tmp/Main.imports中的dist/build/spec/spec-tmp/Main.imports下。对于spec,套件中还有其他文件,它们的导入也显示在同一目录中。