运行时stack test --profile
它会自动添加 -p rts 选项。 我正在尝试在我的测试套件上进行一些内存分析,因此想添加 hc 或 hy rts 选项。
这似乎行不通
stack test --profile --ghc-options="+RTS -hc -RTS"
它给出了错误
ghc: the flag -hc requires the program to be built with -prof
如果我必须猜测,您打算将 +RTS 选项传递给最终测试程序,但在上面的调用中,可能是这些选项被 ghc 可执行文件本身接收; 就像你告诉 ghc "编译此代码,但在执行此操作时请分析您的内存"。我的建议是在启用分析的情况下构建测试(例如,首先使用stack test --profile
运行测试,尽管您可能也可以使用某种形式的stack build
(,然后运行生成的测试可执行文件(带有分析(通过 RTS 选项。