`stack build`存储生成的可执行文件在哪里?

时间:2015-07-17 00:09:10

标签: haskell haskell-stack

我正在使用多个stack.yaml文件来构建GHC 7.8和7.10。如何设置PATH以包含特定stack.yaml文件的二进制文件,例如stack-7.8.yaml

2 个答案:

答案 0 :(得分:10)

stack path --local-install-root命令解决了这个问题。例如,从stack --stack-yaml stack-7.8.yaml设置二进制文件的路径,执行

export PATH=$(stack --stack-yaml stack-7.8.yaml path --local-install-root):$PATH

注意:此处也可以使用stack exec命令,但我不希望通过调用stack --stack-yaml stack-7.8.yaml exec <cmd>而不是普通<cmd>来混乱我的脚本。

答案 1 :(得分:0)

要回答标题中的问题,可执行文件存储在项目本地的.stack-work文件夹中。对我来说,项目文件夹的完整路径是.stack-work/dist/e626a42b/build/{PROJECT_NAME}-exe。其他可执行文件,例如测试可执行文件和基准可执行文件,也分别存储在{PROJECT_NAME}-test{PROJECT_NAME}-bench中。