haskell - 解析索引缓存失败(Data.Binary.Get.runGet 在位置 16:)
问题描述
我正在尝试为我正在处理的项目编写安装脚本,我不得不通过以下链接再次安装 ghc(没有下载 vms 的资源)来测试它curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
:一切正常,但是当我使用运行项目时,cabal run proj
我收到以下警告,其中 A,B 代表 32 个字符串:
Warning: Parsing the index cache failed (Data.Binary.Get.runGet at position
16: Non-matching structured hashes: A;
expected: B). Trying to regenerate the index
cache...
我去了我的主目录并删除.ghcup
了空.ghc
目录。然后我去usr/local/bin
发现以下内容:
/usr/local/bin > ls | grep ghc
ghc
ghc-8.8.3
ghc-pkg
ghc-pkg-8.8.3
ghci
ghci-8.8.3
haddock-ghc-8.8.3
runghc
runghc-8.8.3
在我的 Brew 文件夹中,我有另一个 ghc-8.8.3 实例。我真的不确定我是否只是不经意间把自己搞砸了。是否会建议重新安装,或者是否会删除每个 .ghc 出现的栏以仅保留一个就可以了?
解决方案
看起来 Cabal 商店在此过程中不知何故变得不一致(参见cabal 问题 #6659的初步讨论)。假设您使用的是 GHC 8.8.3,删除~/.cabal/store/ghc-8.8.3
应该可以正确地重新创建它。
顺便说一句,如果您计划通过 ghcup 管理 GHC、cabal-install 和其他工具的安装,您不妨删除系统范围的 Brew 安装,这可能是不必要的。
推荐阅读
- java - JavaFX 图像 getUrl() 在 Excelsior jet 中导致 NoSuchMethodError
- c# - 绑定用户控件 WPF
- sql - 在 Oracle 11g 中选择两个值之间的行
- python - 在理解代码方面需要帮助
- android - 如何每隔一定时间安排一个任务
- html - Building a responsive "centered icons with descriptions" layout
- java - 尝试从 Fragment 切换到 Activity 时出现 TransactionTooLargeException
- javascript - 无法让“Fitty”与 Angular 2+ 一起使用
- mongodb - 如何将增量 mongodb 数据库迁移到生产环境?
- html - 如果包含的元素是自动调整大小的,垂直线 div 会消失