【问题标题】:Using nix to build haskell project without split object files使用 nix 构建没有拆分目标文件的 haskell 项目
【发布时间】: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 会为我节省大量编译时间。

【问题讨论】:

    标签: haskell ghc nix


    【解决方案1】:

    我认为您希望在您的 mkDerivation 中使用 enableDeadCodeElimination=false

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多