如何在安装GHC与ghcup时修复此错误?



我试图在运行Ubuntu子系统的windows笔记本电脑上安装GHC和ghcup。我总是得到同样的错误,我甚至不知道到底是哪里出了问题。下面是错误信息:

[ Info  ] verifying digest of: ghc-8.10.7-x86_64-fedora27-linux.tar.xz
[ Info  ] Unpacking: ghc-8.10.7-x86_64-fedora27-linux.tar.xz to /tmp/ghcup-61d1fb5776edc19e
[ Info  ] Installing GHC (this may take a while)
[ ghc-make ] # on Win64, "install -s" calls a strip that doesn't understand 64bit binaries.
[ ghc-make ] # For some reason, this means the DLLs end up non-executable, which means
[ ghc-make ] "utils/ghc-cabal/dist-install/build/tmp/ghc-cabal-bindist" copy compiler stage2 "strip" '' '/home/levi...
i...         Installing library in /home/levi/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/ghc-8.10.7
i...         "/home/levi/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/bin/ghc-pkg" --force --global-package-db "/home/levi/.gh...
[ ghc-make ] ghc-pkg: Couldn't open database /home/levi/.ghcup/ghc/8.10.7/lib/ghc-8.10.7/package.conf.d for modific...
i...         make[1]: *** [ghc.mk:985: install_packages] Error 1
make: *** [Makefile:51: install] Error 2
[ Error ] BuildFailed failed in dir "/tmp/ghcup-61d1fb5776edc19e": Process "make" with arguments ["install"] failed with exit code 2.
[ ...   ]     Check the logs at /home/levi/.ghcup/logs and the build directory /tmp/ghcup-61d1fb5776edc19e for more clues.
[ ...   ]     Make sure to clean up /tmp/ghcup-61d1fb5776edc19e afterwards.
"_eghcup --cache install ghc recommended" failed!
levi@LAPTOP-BBDADJ2R:~$

对于为什么会发生这种情况以及如何修复它有什么想法吗?

根据ghcup repo上的这个问题判断(它引用了与您相同的错误),您正在使用不支持的WSL 1。你必须升级到WSL 2。

$ sudo apt-get update -y && sudo apt-get install build-essential curl libffi-dev libffi7 libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5 -y
  1. 打开你的家->在右边菜单上选择"显示隐藏文件"
  2. 你可以看到。ghcup文件夹
  3. <
  4. 打开.ghcup→缓存/gh>创建一个名为ghcup-0.0.7.yaml的文件
  5. 粘贴lobalTools:ShimGen:dlUri: https://downloads.haskell.org/~ ghcup/shimgen/垫片- 2. exedlHash: 7 c55e201f71860c5babea886007c8fa44b861abf50d1c07e5677eb0bda387a70toolRequirements:GHC:unknown_version:Linux_Debian:unknown_versioning:distroPKGs:——建设重要——旋度——libffi-dev——libffi6——libgmp-dev——libgmp10——libncurses-dev——libncurses5——libtinfo5指出:"在= 11":distroPKGs:——建设重要——旋度——libffi-dev——libffi7——libgmp-dev——libgmp10——libncurses-dev——libncurses5——libtinfo5指出:">

在您的终端上写这个:sudo apt-get install gcc

最新更新