【发布时间】:2017-02-22 16:24:23
【问题描述】:
在 Gabriel Gonzalez 的关于使用 nix 构建 haskell 项目的教程的 project 3 中,他写道:
默认情况下,这些库使用 GHC 的
-fsplit-objs标志编译以启用拆分目标文件,这会减小库大小但会增加编译时间。这是我建议在开发过程中使用 cabal 构建根项目的另一个原因,因为默认情况下,cabal 不会使用拆分对象进行编译,因此构建速度会更快。但是,-fsplit-objs在 Nix 构建项目时是一个很好的默认设置,因此您无需更改此设置。
没有提到的是如何在没有-fsplit-objs 的情况下让nix 构建你的haskell 项目。就我而言,我有一个后端项目(使用 GHC 构建)、一个前端项目(使用 GHCJS 构建)和一个共享项目(两者都构建)。共享项目的重建有些常见,因此能够关闭 -fsplit-objs 会为我节省大量编译时间。
【问题讨论】: