我有一对夫妇的那需要相当一段时间来编译(独立)的文件,所以我想我会尝试并行编译,每唐·斯图尔特的回答here。如何使用“使”与GHC依存产生
我跟着方向here,所以我的makefile文件看起来像
quickbuild:
ghc --make MyProg.hs -o MyProg
depend:
ghc -M -dep-makefile makefile MyProg
# DO NOT DELETE: Beginning of Haskell dependencies
...
MyProg.o : MyProg.hs
MyProg.o : B.hi
MyProg.o : C.hi
...
# DO NOT DELETE: End of Haskell dependenciesghc
(注:违背the docs,GHC似乎默认为 “生成文件”,而不是 “Makefile文件”,即使 “Makefile文件” 的存在。)
我的问题是:如何使快速编译依赖于任何自动根依赖(这样作将并行实际运行)?我试图在'quickbuild'的依赖列表中添加'MyProg.o',但'make'(正确)抱怨说没有规则来构建'B.hi'。
很显然,我试图避免构建语句,每一个文件,这将是烦人在最好的。我不认为这就是唐的意图,但我不清楚应该怎么做。 – crockeea
你是否可以为'* .hi'文件制作一个伪规则(或其他任何调用它)?? –
您是否建议增加:'B.hi:B.o \ n \ t ghc B'?然后我需要为所有40个模块做到这一点。你的意思是别的吗? – crockeea