如果库需要不同版本的“base”该怎么办?

2024-03-19

我正在尝试安装需要与我已安装的版本不同的基础版本的软件包(我有4.6.0.0,他们要求< 4.6)。我如何在我的系统上安装这些?

编辑:这些包实际上需要较旧的包才能构建,而不仅仅是作为 .cabal 约束。


由于无法重新安装base,在更新之前安装这些软件包的唯一方法是获取源代码,

cabal unpack foo

然后编辑foo.cabal,改变上限base在那里,修改软件包版本(附加一个.1)这样在安装其他包时cabal不认为它坏了,因为.cabal它知道的文件(从包索引)说它需要不同版本的base, and

cabal install

从您解压到的目录。

由于 base-4.6 有一些重大变化;这Eq and Show超类已被删除Num, and Bits不再有Num作为超类,可能需要通过添加来修复代码Eq, Show or Num一些函数的约束以使包编译。

虽然这很不方便,但要花费几周时间才能掌握最新的 GHC 版本,这是需要付出的代价。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果库需要不同版本的“base”该怎么办? 的相关文章

随机推荐