4

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: 私の OS は openSUSE 12.1 です。

4

1 に答える 1

1

いくつかのアイデア:

  1. haskell-platform という zypper パッケージがあると思います。それをインストールするとcabal-install、他のいくつかのツールがインストールおよび構成されます。おそらくhs2scの問題を解決してくれるでしょう。

  2. xmonad 用の zypper パッケージはありますか? もしそうなら、cabal を直接使おうとするのではなく、それを使うことをお勧めします。

Linux に Haskell をインストールするには、基本的に 3 つの主な方法があります。

オプション 1 (ほとんどのユーザーに推奨): cabal コマンドを直接使用するのではなく、Linux ディストリビューションのパッケージ マネージャーを使用してインストールします。必要なパッケージがまだディストリビューションで利用できない場合は、リクエストしてください。すべての依存関係が整理されているため、このアプローチが最も安全です。欠点は、通常、最新のリリースを入手できないことです。このコマンドは、開発するcabalパッケージに対して引き続き使用できます。

オプション 2: パッケージ マネージャーを使用して ghc と haskell-platform をインストールしますが、その後、cabal コマンドを使用して haskell-y のものをインストールします。cabal を使用してインストールできないもの (たとえば、haskell 以外のもの) をインストールするには、引き続きパッケージ マネージャーを使用します。これを行うと、cabal を root として実行しない (または、cabal-install を構成してすべてを root としてインストールする) ことはなく、cabal を使用して実行できることはパッケージ マネージャーに行わせないことで、多くの cabal 地獄を回避できます。このアプローチの主な欠点は、一部のライブラリの依存関係を自分で処理する必要がある場合があることです。

オプション 3: ghc (およびオプションで Haskell プラットフォーム) を手動でインストールし、cabal-install (cabalコマンド) を使用して必要なものをすべてインストールします。すべての最先端に留まりたいと思っていて、手動でインストールすることを気にしないのであれば、これは実行可能なオプションです。

于 2013-06-07T20:23:18.400 に答える