12

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

4

2 回答 2

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>而不是 plain <cmd>

于 2015-07-17T00:09:10.120 回答
5

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

于 2019-10-10T22:33:50.110 回答