我在构建软件包时注意到了一些“Compiling ...”消息,例如:
Preprocessing library syb-0.3.7...
[ 1 of 16] Compiling Data.Generics.Basics ( ... )
[ 2 of 16] Compiling Generics.SYB.Basics ( ... )
[ 3 of 16] Compiling Data.Generics.Instances ( ... )
...
[16 of 16] Compiling Generics.SYB ( ... )
[ 1 of 16] Compiling Data.Generics.Basics ( ... )
[ 2 of 16] Compiling Generics.SYB.Basics ( ... )
[ 3 of 16] Compiling Data.Generics.Instances ( ... )
...
[16 of 16] Compiling Generics.SYB ( ... )
In-place registering syb-0.3.7...
Running Haddock for syb-0.3.7...
Preprocessing library syb-0.3.7...
在建造一个阴谋沙箱时我注意到了这一点。
我只是好奇发生了什么事。是真的两次编译源码吗?这总是会发生吗?它与在沙箱中构建有关吗?
答案 0 :(得分:3)
它实际上是两次编译源代码。它与在沙箱中构建无关。它并不总是必须发生 - 您可以通过切换library-profiling
标志让cabal不要在其配置文件中执行此操作。但是,强烈建议您不要这样做:目前,cabal没有很好的支持来获取没有分析库的依赖树,并使用分析重建它们。