系统相关
首页 > 系统相关> > linux – cabal-install安装失败

linux – cabal-install安装失败

作者:互联网

我正在尝试安装xmonad.首先,我使用以下命令安装ghc编译器:

zypper ar http://download.opensuse.org/repositories/devel:/languages:/haskell/openSUSE_12.1/devel:languages:haskell.repo  
zypper in ghc  

之后,我尝试使用以下命令安装cabal-install-0.14.0:

wget http://hackage.haskell.org/packages/archive/cabal-install/0.14.0/cabal-install-0.14.0.tar.gz
tar zxfv cabal-install-0.10.2.tar.gz
cd cabal-install-0.10.2
sh bootstrap.sh  

但是当我运行最后一个命令时,它得到了错误:

Setup: The program hsc2hs is required but it could not be found

Error during cabal-install bootstrap:
Building the network package failed.  

显然,我需要hsc2hs程序,我可以在目录“/usr/lib/ghc-7.4.2/hsc2hs”中看到它,所以我在PATH中添加了这个目录.但它仍然无效.

有人能给我一些建议吗?谢谢.

PS:我的操作系统是openSUSE 12.1

解决方法:

一些想法:

>我相信有一个名为haskell-platform的zypper软件包.如果您安装它,它将为您安装和配置cabal-install和一些其他工具.它可能会为您解决hs2sc问题.
> xmonad是否有zypper包?如果是这样,我建议您使用它而不是尝试直接使用cabal.

在Linux上安装Haskell的方法基本上有三种.

选项1(建议大多数用户使用):使用Linux发行版的软件包管理器来安装内容,而不是直接使用cabal命令.如果您想要的软件包尚未在发行版中提供,请提供.这种方法是最安全的,因为所有的依赖关系都已经为您解决了.缺点是您通常不会拥有最新版本.您仍然可以对您开发的任何软件包使用cabal命令.

选项2:使用您的软件包管理器安装ghc和haskell-platform,但之后使用cabal命令安装任何haskell-y的东西.您仍然会使用您的软件包管理器来安装无法使用cabal安装的东西(例如,非haskell东西).如果你这样做,你可以通过从不以root身份运行cabal(或者配置cabal-install以root身份安装所有内容)来避免很多阴谋,并且永远不要让你的包管理器做任何可以使用cabal完成的事情.这种方法的主要缺点是您可能必须自己处理一些库依赖项.

选项3:手动安装ghc(以及可选的Haskell平台),并使用cabal-install(cabalcommand)安装您需要的所有其他内容.如果你真的想要保持一切的前沿,并且你不介意手动安装东西,这是一个可行的选择.

标签:linux,haskell,cabal,xmonad
来源: https://codeday.me/bug/20190709/1414094.html