6

我是 stack 的忠实粉丝,我已经从我的机器上完全删除了任何独立的 cabal 和 ghc 可执行文件(让 stack 在它自己神秘的 ~/.stack/ 目录中安装它需要的任何东西)......

但是,看起来某些标志在堆栈下无法正常工作。例如,我想使用-ddump-minimal-imports. 在阴谋集团中,这将是

cabal build --ghc-option=-ddump-minimal-imports

显而易见的翻译是

stack build --ghc-options -ddump-minimal-imports

这会运行,但只产生可执行文件(据我所知,至少......也许输出在神秘的 ~/.stack 目录中的某个地方)。

有没有办法做到这一点?

4

1 回答 1

11

我刚刚尝试了这个,使用stack build --ghc-options=-ddump-minimal-imports,它产生了输出文件./.stack-work/dist/x86_64-osx/Cabal-1.22.4.0/build/,例如:

$ stack clean

$ stack build --ghc-options=-ddump-minimal-imports
stack-0.1.5.0: configure
Configuring stack-0.1.5.0...
stack-0.1.5.0: build
Preprocessing library stack-0.1.5.0...
[ 1 of 69] Compiling Data.Set.Monad   ( src/Data/Set/Monad.hs, .stack-work/dist/x86_64-osx/Cabal-1.22.4.0/build/Data/Set/Monad.o )
[ 2 of 69] Compiling Data.Attoparsec.Combinators ( src/Data/Attoparsec/Combinators.hs, .stack-work/dist/x86_64-osx/Cabal-1.22.4.0/build/Data/Attoparsec/Combinators.o )
[ 3 of 69] Compiling Network.HTTP.Download.Verified ( src/Network/HTTP/Download/Verified.hs, .stack-work/dist/x86_64-osx/Cabal-1.22.4.0/build/Network/HTTP/Download/Verified.o )
^Cuser interrupt

$ find . -name '*imports*'
./.stack-work/dist/x86_64-osx/Cabal-1.22.4.0/build/Data.Attoparsec.Combinators.imports
./.stack-work/dist/x86_64-osx/Cabal-1.22.4.0/build/Data.Set.Monad.imports
./.stack-work/dist/x86_64-osx/Cabal-1.22.4.0/build/Network.HTTP.Download.Verified.imports
于 2015-10-05T23:57:08.463 回答