You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GHCup与Cabal包版本信息冲突及项目本地包查询问题

GHCup与Cabal状态矛盾及本地包查询方案

一、GHCup与cabal info的状态矛盾解析

1. HLS状态不一致

ghcup tui显示HLS已安装,但cabal info hls返回未安装,原因是:
HLS是GHCup直接安装的独立开发工具,不属于Cabal包管理体系范畴,cabal info仅查询Cabal维护的全局/项目包索引,无法识别GHCup安装的工具。
验证HLS实际状态,使用以下命令:

ghcup list hls
hls --version

2. Cabal工具与Cabal库版本不符

  • cabal是命令行工具,由GHCup独立分发,不存在名为cabal的Cabal包,所以cabal info cabal会显示未安装,确认工具版本直接用:
    cabal --version
    
  • Cabal是Haskell的核心库包,cabal工具的版本和它依赖的Cabal库版本不需要完全匹配(比如cabal 3.10.3.0可依赖Cabal 3.10.2.0库),这是正常现象。

二、查询项目本地安装的包信息

如果dbus仅在项目目录本地安装,可通过以下命令查询:

  • 进入项目目录后,列出当前项目环境下所有已安装包:
    cabal list --installed
    
  • 或者通过Cabal环境调用ghc-pkg查看本地包数据库:
    cabal exec -- ghc-pkg list
    
  • 直接查询指定本地包的信息:
    cabal info --project dbus
    

内容的提问来源于stack exchange,提问作者Enlico

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 13:33:14