我已经使用stack
构建工具安装了ghc
。它编译我的项目。但是,当我进入nix-shell
项目目录中,并希望从nix-shell
编译项目中,我看到的错误是这样的:如何使用已安装的ghc与nix-shell中的堆栈?
No compiler found, expected minor version match with ghc-8.0.2
这可以通过运行stack setup
命令是固定的。但我担心这会再次安装ghc
在我的机器上耗费更多空间等等。有没有办法使用已安装的ghc
for nix-shell
而不运行stack setup
命令?
我对'nix'一无所知,但是运行'stack setup'的AFAIK不会重新下载GHC的一个版本,如果这个版本已经被下载到你的计算机的某个地方的话。 Stack尽可能地尝试在项目之间共享下载。 – Alec
现在,堆栈想要使用自己的ghc,除非在config.yaml/stack.yaml中指定了'--system-ghc'或'system-ghc:true'。所以,我建议在'config.yaml'中放入'system-ghc:true'。 – mgsloan
@mgsloan感谢您的咨询!可能这是解决方案。同时考虑在'PATH'中添加'ghc'。 – Shersh