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

安装Conduit库后GHC报错求助:非x86_64 PE+文件问题

解决GHC加载hashable库时的PE文件类型panic错误

问题描述

安装Conduit库后,GHC 9.4.7出现以下panic错误:

ghc-9.4.7.exe: C:\cabal\store\ghc-9.4.7\hashable-1.4.3.0-1961fe79003fd705645c177b7f4aca0399a4d276\lib\libHShashable-1.4.3.0-1961fe79003fd705645c177b7f4aca0399a4d276.a(#7:LowLevel.o): Not a x86_64 PE+ file.
    ghc-9.4.7.exe: Unknown COFF 4 type in getHeaderInfo.
    panic! (the 'impossible' happened)
      GHC version 9.4.7:
            loadArchive "C:\\cabal\\store\\ghc-9.4.7\\hashable-1.4.3.0-1961fe79003fd705645c177b7f4aca0399a4d276\\lib\\libHShashable-1.4.3.0-1961fe79003fd705645c177b7f4aca0399a4d276.a": failed

Please report this as a GHC bug:  https://www.haskell.org/ghc/reportabug

解决方案

这类错误大多是Cabal缓存的库文件损坏,或者编译架构不匹配导致的,按以下步骤排查:

  • 清理损坏的缓存文件
    直接删除报错的hashable库缓存目录(Windows命令行执行):

    rmdir /s /q C:\cabal\store\ghc-9.4.7\hashable-1.4.3.0-1961fe79003fd705645c177b7f4aca0399a4d276
    

    或者清理整个Cabal缓存后重新构建:

    cabal clean
    cabal build
    
  • 验证编译架构一致性
    检查你的GHC是否为x86_64版本:

    ghc --info | findstr "Arch"
    

    确保输出包含x86_64,如果系统中存在32位工具链,可能会导致交叉编译混淆,需确保所有依赖都用同架构编译。

  • 重新安装hashable库
    单独重新安装hashable库(指定版本确保匹配):

    cabal install hashable-1.4.3.0 --reinstall
    

    之后再重新安装Conduit:

    cabal install conduit
    
  • 检查VSCode Haskell插件配置
    确认VSCode的Haskell插件使用的GHC路径和命令行版本一致,避免插件调用了不同版本的编译器导致兼容性问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 14:20:12