【发布时间】:2026-01-14 10:25:01
【问题描述】:
我有一个阴谋集团项目,我正在使用 new-build 构建它。我已将库配置为在传递dev 标志时使用-O0,并将-O2 用于生产构建。
我的 cabal 文件中的相关节是
if (flag(dev)) || (flag(library-only))
ghc-options: -O0
cpp-options: -DDEVELOPMENT
else
ghc-options: -O2
但是,如果我选择 cabal new-build -f dev,cabal 会出于某种原因通过 -O1 选项。
我可以通过传入--disable-optimization 来解决这个问题,但我很好奇为什么-f dev 会这样
【问题讨论】: