haskell——如何从非主模块创建二进制文件?
我经常在测试中离开haskell——如何从非主模块创建二进制文件?,haskell,compilation,ghc,Haskell,Compilation,Ghc,我经常在测试中离开main::IO()函数。我可以使用runghc很好地运行它们,但有时我想编译它们(例如,在另一个平台上运行)。有办法做到这一点吗?例如,如果我跑步 ghc --make Test.Haar 如果Test/Haar.hs有一个main方法,那么什么也不会发生,它只是创建.o文件。但是请注意,在使用-main is Test.Haar之后,如果您想将模块作为另一个程序的一部分使用,您必须在不使用-main is的情况下重新编译它,否则,链接器将找到两个入口点并抛出一个错误。我不
main::IO()
函数。我可以使用runghc
很好地运行它们,但有时我想编译它们(例如,在另一个平台上运行)。有办法做到这一点吗?例如,如果我跑步
ghc --make Test.Haar
如果
Test/Haar.hs
有一个main
方法,那么什么也不会发生,它只是创建.o
文件。但是请注意,在使用-main is Test.Haar
之后,如果您想将模块作为另一个程序的一部分使用,您必须在不使用-main is
的情况下重新编译它,否则,链接器将找到两个入口点并抛出一个错误。我不确定这是否是您要查找的,但签出-main是选项(docs at)
ghc --make -main-is Test.Haar Test.Haar