安装matrix
尝试用matrix库时,使用cabal命令 cabal install matrix 安装matrix,cabal提醒我使用–lib参数,也就是 cabal install --lib matrix
问题
命令执行完之后ghci报错了,所有的base里面的库都不能import了,只能按照提示 :set -package base后才能使用
ghci> import Data.Char
<no location info>: error:
Could not load module ‘Data.Char’
It is a member of the hidden package ‘base-4.18.0.0’.
You can run ‘:set -package base’ to expose it.
(Note: this unloads all the modules in the current scope.)
ghci还能用,但是 visual studio code,也全部报错,无法编译运行。
尝试expose包,也不见效
ghc-pkg expose base
查看包的状态,已经是expose了
ghc-pkg describe base
问题解决
从 bing/baidu 上搜了很久也没有找到对策,突然想是不是–lib参数导致的,然后执行
cabal install --lib base
果然 Data包都能用了,但是System下的包还是不能用。猜想一定是配置被改变了。然后查找cabal的帮助,寻找cabal的配置路径
The global configuration file for cabal-install is ~/.cabal/config.
到windows的用户目录下没有找到这个配置文件,然后继续翻找用户下的文件,终于找到一个
C:\Users\admin\AppData\Roaming\ghc\x86_64-mingw32-9.6.1\environments\default
clear-package-db
global-package-db
package-db D:\tools\cabal\store\ghc-9.6.1\package.db
package-id matrix-0.3.6.1-859b3edf890724f232c6ee70f3d0bc7f00e4679d
package-id base-4.18.0.0
package-id directory-1.3.8.1
package-id filepath-1.4.100.1
package-id mtl-2.3.1
把这个文件删除后,ghci和vsc都不报错了