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

Windows 10下GHCup安装报错:www.haskell.org证书不被信任

Windows 10下GHCup安装证书错误修复方案

一、更新Windows系统根证书

  • 打开管理员权限的CMD,执行以下命令更新根证书:
    certutil -generateSSTFromWU RootCerts.sst
    certutil -addstore -f root RootCerts.sst
    
  • 完成后删除生成的RootCerts.sst文件,重启终端再尝试安装

二、检查并导入关键根证书

  • 运行certmgr.msc打开证书管理器,展开「受信任的根证书颁发机构」→「证书」,检查是否存在DigiCert Global Root CA和DigiCert TLS RSA SHA256 2020 CA1
  • 如果找不到,从Chrome导出导入:
    1. 用Chrome打开haskell官网,点击地址栏的锁图标→「证书」→「路径」标签
    2. 选中最顶层的根证书,点「查看证书」→「详细信息」→「复制到文件」
    3. 选DER编码二进制格式,存成.cer文件,双击该文件选「安装证书」→「本地计算机」→「受信任的根证书颁发机构」完成导入

三、修复MinGW的ca-bundle.crt

  • 找到MinGW路径下的/usr/ssl/certs/ca-bundle.crt(比如Git自带的路径是C:\Program Files\Git\usr\ssl\certs)
  • 备份原文件后,把Windows根证书导出为PEM格式:
    1. 在certmgr.msc里右键「受信任的根证书颁发机构」→「所有任务」→「导出」
    2. 选Base64编码X.509格式,存成.pem文件
    3. 把.pem里的内容复制替换到ca-bundle.crt中
  • 嫌麻烦的话,也可以直接执行certutil -encode root RootCerts.pem,把生成的内容追加到ca-bundle.crt里

四、恢复中断的安装

  • 直接重新运行GHCup的安装命令:
    Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://get-ghcup.haskell.org'))
    
  • 如果还是不行,手动下载GHCup安装包,右键管理员运行,选择本地安装模式跳过在线验证
  • 临时关闭代理、防火墙再试,安装完成后再恢复

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 22:12:33