我使用Stack在本地机器上构建,但Homebrew使用Cabal。这意味着有时构建对我来说很好,但在Homebrew中不起作用。这似乎是因为Cabal使用最新的包,而Stack使用解析器中的包。
有没有一种方法可以根据当前的解析器自动生成.cabal
文件中的包版本?(我使用的是package.yaml
文件(
在FreeBSD端口(类似于Homebrew、AFAIK(中,我们强制cabal
使用固定版本的依赖项,方法是在包目录中提取并拆包它们,然后调用cabal new-build
。它还使用hpack
从package.yaml
生成.cab文件。但是,依赖项列表是通过调整版本手动生成的,直到成功构建包为止。