gpt4 book ai didi

haskell - `stack clean` 和删除 `.stack-work` 目录有什么区别?

转载 作者:行者123 更新时间:2023-12-03 23:58:25 30 4
gpt4 key购买 nike

1 上下文

我参与了一个涉及大量 C 位和 FFI 的 Haskell 项目。所以我发现自己经常运行和重新运行命令,比如

$ stack build
$ stack build --force-dirty
$ stack clean
$ rm ./.stack-work

一遍又一遍,以使 C 位正确链接到 Haskell 位。换句话说,有时在运行 stack build 时一切正常。 ,有时它们不会(在这种情况下,我不得不一遍又一遍地循环执行上述命令,直到我的项目正确构建)。

这意味着我没有正确理解 stack (通过 ghc )在组装 Haskell 位之前组装 C 位。所以这里有一个问题可以帮助我开始消除我的困惑:

2 问题

运行 stack clean 之间有什么值得注意的区别吗?并删除 .stack-work 的内容目录?是否存在删除 .stack-work 的情况?需要目录作为一个很好的预防措施,以确保您实际上正在运行一个干净的构建?

最佳答案

正如您在此处阅读源代码所看到的:

https://github.com/commercialhaskell/stack/blob/master/src/Stack/Clean.hs

有两个层次,满的和浅的。我认为浅似乎是默认值。它似乎能够清理特定的包,或者如果您根本不提供任何选项,它会清理除本地包中的额外依赖之外的所有内容。

关于haskell - `stack clean` 和删除 `.stack-work` 目录有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41574445/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com