我之前安装过Haskell,但这已经过时了。我试图根据我找到的文件卸载所有文件,并使用自制软件重新安装。
brew install ghc cabal-install
这是成功的
==> Downloading https://homebrew.bintray.com/bottles/ghc-7.10.1_1.yosemite.bottle.tar.gz
######################################################################## 100.0%
==> Pouring ghc-7.10.1_1.yosemite.bottle.tar.gz
/usr/local/Cellar/ghc/7.10.1_1: 5423 files, 821M
==> Downloading https://homebrew.bintray.com/bottles/cabal-install-1.22.2.0.yosemite.bottle.1.tar.gz
######################################################################## 100.0%
==> Pouring cabal-install-1.22.2.0.yosemite.bottle.1.tar.gz
==> Caveats
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
==> Summary
/usr/local/Cellar/cabal-install/1.22.2.0: 6 files, 19M
但后来我明白了:
> ghci
-bash: /usr/bin/ghci: No such file or directory
并且
> cabal
-bash: /usr/bin/cabal: No such file or directory
由于我可以运行我酒窖中的其他软件包,我认为我应该能够运行这些软件包吗?
答案 0 :(得分:1)
我认为你在/usr/bin
中有一些挥之不去的符号链接或类似内容。 Homebrew自动将二进制文件从其“cellar”符号链接到/usr/local/bin
(注意该目录包含local
)。
您的合理行动可能是
检查Homebrew是否在ghc
中安装了cabal
,/usr/local/bin
等(它们应该是指向/usr/local/Cellar/
下某处的符号链接)。如果他们存在,你可以得出结论,Homebrew没有搞砸。
检查/usr/bin/ghci
,/usr/bin/cabal
实际上是什么类型:例如ls -l /usr/bin/ghci
。它可能会告诉你它们是指向不存在的文件的符号链接,它们可能是你以前的Haskell安装所遗漏的。
删除损坏的符号链接,并确保/usr/local/bin
上的某个地方$PATH
。
(现在有人不推荐使用Homebrew安装GHC,你可能想尝试Haskell主页上的安装说明:https://www.haskell.org/downloads。另一方面,我没有看到太奇怪的东西在Homebrew的GHC公式中,所以目前可能没问题。)