Haskell 在堆栈项目中设置cabal配置选项
在我的堆栈项目中,我有一个Haskell 在堆栈项目中设置cabal配置选项,haskell,ghc,cabal,haskell-stack,Haskell,Ghc,Cabal,Haskell Stack,在我的堆栈项目中,我有一个myproject.cabal文件。我想尝试cabal选项--禁用库评测,这里有文档记录: 然而,我一直无法弄清楚该选项必须在哪里使用:无论我把它放在哪里,后续的堆栈运行都会失败退出(以某种方式抱怨该选项) 我更高层次的目标是看看这是否会加快我的项目的ghc编译,但这实际上是次要的问题:我真的很想知道这些配置选项是如何工作的(在堆栈项目的上下文中) 我正在使用GHC6.7。特别是,如果我使用cabal configure,该选项最终会在我的myproject.caba
myproject.cabal
文件。我想尝试cabal选项--禁用库评测
,这里有文档记录:
然而,我一直无法弄清楚该选项必须在哪里使用:无论我把它放在哪里,后续的堆栈运行都会失败退出(以某种方式抱怨该选项)
我更高层次的目标是看看这是否会加快我的项目的ghc编译,但这实际上是次要的问题:我真的很想知道这些配置选项是如何工作的(在堆栈项目的上下文中)
我正在使用GHC6.7。特别是,如果我使用cabal configure
,该选项最终会在我的myproject.cabal
文件中的ghc options
中配置,但ghc会抱怨:
ghc: unrecognised flag: --disable-library-profiling
我已经在使用其他ghc选项
而没有遇到类似的问题——在这种情况下,堆栈成功完成:
ghc-options: -threaded -rtsopts -with-rtsopts=-N -O0 -j +RTS -A128m -n2m -RTS
ghc-options: -threaded -rtsopts -with-rtsopts=-N -O0 -j +RTS -A128m -n2m -RTS --disable-library-profiling
但在这种情况下并非如此:
ghc-options: -threaded -rtsopts -with-rtsopts=-N -O0 -j +RTS -A128m -n2m -RTS
ghc-options: -threaded -rtsopts -with-rtsopts=-N -O0 -j +RTS -A128m -n2m -RTS --disable-library-profiling
与
--disable library profiling
等效的堆栈是:
$ stack build --no-library-profiling
您是否知道默认情况下已禁用库配置文件<代码>--禁用库评测是一个
cabal
标志,而不是ghc
标志。我不确定,谢谢(但我仍然想知道如何设置cabal选项)。这就是为什么我猜cabalconfigure
不会在ghc选项中实际放置标志的原因。你确定你使用的是ghc 6.7
?IIRC,没有6.7版本。嗯,我不确定,没有:我只知道我在我的堆栈中使用了解析器:lts-6.7
。yaml
,我相信它指的是: