使用 stack ghc 替代 ghc
Using stack ghc as replacement of ghc
不使用 stack 或 cabal 分发的包通常有一组隐含的依赖关系。这有时意味着 运行 如果不将包安装到 ghcs 全局包数据库中,直接在所述包上的 ghc 将无法工作。
我想用 stack ghc
代替 ghc
为此,我在我的 shell 初始化文件中定义了以下内容:
export PATH="`stack path --compiler-bin`:$PATH"
现在命令 ghc
将使用堆栈的 ghc - 它 不是 但是与 stack ghc
一样。一方面,它不会加载 "snapshot" 和 "global-project" 包数据库,如下面的命令所示:
$ ghc -v
Glasgow Haskell Compiler, Version 8.0.1, stage 2 booted by GHC version 7.10.3
Using binary package database: ~/.stack/programs/x86_64-linux/ghc-nopie-8.0.1/lib/ghc-8.0.1/package.conf.d/package.cache
...
$ stack ghc -- -v
Glasgow Haskell Compiler, Version 8.0.1, stage 2 booted by GHC version 7.10.3
Using binary package database: ~/.stack/programs/x86_64-linux/ghc-nopie-8.0.1/lib/ghc-8.0.1/package.conf.d/package.cache
Using binary package database: ~/.stack/snapshots/x86_64-linux-nopie/lts-7.9/8.0.1/pkgdb/package.cache
Using binary package database: ~/.stack/global-project/.stack-work/install/x86_64-linux-nopie/lts-7.9/8.0.1/pkgdb/package.cache
...
有没有人指导如何使用 stack ghc
代替 ghc
。
我目前的用例是我得到了一个引用 ghc
的生成文件 - 但我的机器上没有这个命令。
如果您在 stack exec
内执行 makefile,它将设置 GHC_PACKAGE_PATH 环境变量。它还将适当地扩展 PATH
。
或者,要在您的 shell 中设置此设置,您可以这样做
export GHC_PACKAGE_PATH=`stack path --ghc-package-path`
不使用 stack 或 cabal 分发的包通常有一组隐含的依赖关系。这有时意味着 运行 如果不将包安装到 ghcs 全局包数据库中,直接在所述包上的 ghc 将无法工作。
我想用 stack ghc
代替 ghc
为此,我在我的 shell 初始化文件中定义了以下内容:
export PATH="`stack path --compiler-bin`:$PATH"
现在命令 ghc
将使用堆栈的 ghc - 它 不是 但是与 stack ghc
一样。一方面,它不会加载 "snapshot" 和 "global-project" 包数据库,如下面的命令所示:
$ ghc -v
Glasgow Haskell Compiler, Version 8.0.1, stage 2 booted by GHC version 7.10.3
Using binary package database: ~/.stack/programs/x86_64-linux/ghc-nopie-8.0.1/lib/ghc-8.0.1/package.conf.d/package.cache
...
$ stack ghc -- -v
Glasgow Haskell Compiler, Version 8.0.1, stage 2 booted by GHC version 7.10.3
Using binary package database: ~/.stack/programs/x86_64-linux/ghc-nopie-8.0.1/lib/ghc-8.0.1/package.conf.d/package.cache
Using binary package database: ~/.stack/snapshots/x86_64-linux-nopie/lts-7.9/8.0.1/pkgdb/package.cache
Using binary package database: ~/.stack/global-project/.stack-work/install/x86_64-linux-nopie/lts-7.9/8.0.1/pkgdb/package.cache
...
有没有人指导如何使用 stack ghc
代替 ghc
。
我目前的用例是我得到了一个引用 ghc
的生成文件 - 但我的机器上没有这个命令。
如果您在 stack exec
内执行 makefile,它将设置 GHC_PACKAGE_PATH 环境变量。它还将适当地扩展 PATH
。
或者,要在您的 shell 中设置此设置,您可以这样做
export GHC_PACKAGE_PATH=`stack path --ghc-package-path`