haskell - 如何从非主模块创建二进制文件?

时间:2011-11-05 11:16:01

标签: haskell compilation ghc

我经常遇到在测试中留下main :: IO ()函数的情况。我可以使用runghc运行这些,但有时我想编译它们(例如,在另一个平台上运行)。有没有办法做到这一点?如果我跑,例如,

ghc --make Test.Haar

其中Test/Haar.hsmain方法,但没有任何反应,只是创建.o文件。

2 个答案:

答案 0 :(得分:13)

ghc --make -main-is Test.Haar Test.Haar

答案 1 :(得分:4)

但是,请注意,在使用-main-is Test.Haar之后,如果要将模块用作另一个程序的一部分,则必须在不使用-main-is的情况下重新编译它,否则链接器将找到两个条目 - 指向并抛出错误。