运行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
答案 0 :(得分:2)
如果我不得不猜测,你打算将+ RTS选项传递给最终的测试程序,但是在上面的调用中,可能是ghc可执行文件本身正在接收这些选项;就像你告诉ghc"编译这段代码但是请在你这样做时描述你的记忆"。我的建议是在启用了性能分析的情况下构建测试(例如,首先使用stack test --profile
运行测试,尽管可能还可以使用某种形式的stack build
),然后运行生成的测试可执行文件(带有性能分析) )传递RTS选项。