Haskell Stack只找到较新版本的Cabal
我正在尝试使用Stackage lts-13.12构建我的一个项目 Stack抱怨Cabal的版本太新后,我尝试安装一个旧版本:Haskell Stack只找到较新版本的Cabal,haskell,ghc,cabal,haskell-stack,cabal-install,Haskell,Ghc,Cabal,Haskell Stack,Cabal Install,我正在尝试使用Stackage lts-13.12构建我的一个项目 Stack抱怨Cabal的版本太新后,我尝试安装一个旧版本: cabal --version cabal-install version 2.2.0.0 compiled using version 2.2.0.1 of the Cabal library 但是,当我运行堆栈解算器时,会出现以下错误: Using configuration file: stack.yaml Using cabal packages:
cabal --version
cabal-install version 2.2.0.0
compiled using version 2.2.0.1 of the Cabal library
但是,当我运行堆栈解算器
时,会出现以下错误:
Using configuration file: stack.yaml
Using cabal packages:
- ./
Using resolver: lts-13.12
Warning: Installed version of cabal-install (2.4.1.0) is newer than stack has been tested with. If you run into difficulties, consider downgrading.
Using compiler: ghc-8.6.4
Asking cabal to calculate a build plan...
Trying with packages from lts-13.12 and 1 external packages as hard constraints...
The following lines from cabal-install output could not be parsed:
optparse-applicative-0.14.3.0 (via: project-0.1.0.0 project-0.1.0.0) (new
package)
CallStack (from HasCallStack):
error, called at src/Stack/Solver.hs:174:16 in stack-1.9.3-F7FXKCpM3pk5wCtbL9Utvv:Stack.Solver
我的问题是:
- 为什么Stack看到了新的阴谋集团?我怎样才能让它看到老的那个
- 为什么Stack与Cabal 2.4.1.0不兼容,而这是Stackage LTS 13.12中的版本
我正在运行堆栈的
版本1.9.3
,如果这有区别的话。已知堆栈解算器错误消息不正确,并且在cabal输出时阻塞。我认为这个功能没有得到很好的维护
我希望堆栈能够更新它的错误和警告。坚持cabal-install-2.4.1.0可能是最好的选择
我建议您不要使用堆栈解算器
,而是强制它使用lts-13.12,然后手动添加额外的DEP以解决遇到的任何问题。大多数时间堆栈将有助于推荐正确的额外DEP(不使用解算器),但您确实需要应用一些直觉来确保它们是正确的