haskell cabal在mac的哪里安装一个全局包?

5kgi1eie  于 2022-11-14  发布在  Mac
关注(0)|答案(2)|浏览(189)

在MacOS中,如果我执行

cabal install foo --global

cabal在哪里安装foo包?

p3rjfoxz

p3rjfoxz1#

GHC没有一个存储全局数据的地方--它取决于配置,并且会因您从哪里获得GHC而异(nixpkgs,brew,ports,raw from GHCHQ等)。对于您的特定情况,您可以通过@DanielWagner:

$ ghc-pkg describe unix --global

一些简单的shell脚本可以提取您需要的特定信息:

ghc-pkg describe unix --global | egrep '^pkgroot' | cut -d' ' -f2
"/usr/local/Cellar/ghc/8.4.1/lib/ghc-8.4.1"

或者:

% nix-shell -p ghc
$ ghc-pkg describe unix --global | egrep '^pkgroot' | cut -d' ' -f2
"/nix/store/z0ypzmbhn6m0l2adzm8szcd72z7kwy04-ghc-8.0.2/lib/ghc-8.0.2"
kyks70gy

kyks70gy2#

您的用户的设置位于prefix:下的install-dirs global部分中的~/.cabal/config中。(例如,在Linux上,它被预设为/usr/local。)
虽然在我的阴谋集团中,由于某种原因,--global--user做了同样的事情,根据man页面。
我会避免使用它。

相关问题