在运行'stack build'与'stack build --profile'之间存储什么状态或类似地改变ghc选项?

时间:2016-10-11 15:50:32

标签: haskell haskell-stack

如果我运行stack clean && stack build --profile,我得到的可执行文件比运行stack clean && stack build的速度慢,这很正常。

如果我运行stack clean && stack build --profile && stack build,那么我会得到一个同样慢的可执行文件,这一直持续到我运行stack clean && stack build

我在stack.yaml中设置了选项rebuild-ghc-options: true,但是我要么不理解堆栈的正确使用,要么我以某种方式滥用它,因为我没有明确的心理模型运行stack build时状态会受到影响。它显然影响了未来的构建,直到我运行stack clean,它是否也影响了依赖关系?我如何确保在使用默认设置构建时,每次都获得相同的可执行文件?

编辑:让我说清楚,我理解机械方面发生了什么,我明白stack build只重建“需要重建”的东西,如果我运行stack build那就是我< em> want 是为了重建构建发布版所需的一切,如果我刚刚使用剖析构建,那就意味着重建所有东西,就这样吧。

编辑2:好的,我知道堆栈不知道发布或分析构建等,没有根本的区别,但是--profile只是改变了ghc标志吗?我想我要问的是,为什么rebuild-ghc-options没有按照它在锡上所说的那样做?如果ghc选项发生变化,为什么不完全重建项目呢?那个标志实际上做了什么?

0 个答案:

没有答案