質問

私は自分のシステムにCABALを構築/インストールしようとしていますが、次の依存関係エラーに遭遇しています。

SDGL0990Z464C:Cabal-1.8.0.4 cflynn$ ghc --make Setup
SDGL0990Z464C:Cabal-1.8.0.4 cflynn$ ./Setup configure
Configuring Cabal-1.8.0.4...
Setup: At least the following dependencies are missing:
base >=4 && <3 && >=1 && <5, filepath >=1 && <1.2

GHC 6.6.1を知っている限り、GHC 7.0.1がインストールされており、後で「Filepath」パッケージが付属していますか?そして、私は「ベース」が何を参照しているのか正確には不明ですか?

役に立ちましたか?

解決

GHCは、すでにインストールされている特定のライブラリセットを備えた出荷されます。上記のビルドコマンドを実行すると、CABALはGHCで出荷するライブラリの古いバージョンのいくつかのバージョンを「再インストール」したいと考えています。これは明らかな理由で悪いです。

あなたが本当にこれを行う必要がある場合、それは使用するために働くかもしれません cabal-dev それ以外の Cabal. 。ちなみに、使用 Setup.hs のバージョンを呼び出します Cabal コンパイラと一緒に出荷されたライブラリ、 cabal コマンドはを呼び出します cabal-install プログラム。

cabal-dev ラッパーです cabal-install (したがって Cabal サンドボックス化されたビルドを提供するライブラリ)。 GHCを使用して出荷するライブラリのさまざまなバージョンが必要なプログラムを安全にインストールしてください。残りの質問は、これらの古いライブラリが新しいGHCに対して構築されるかどうかです。多くの場合、ビルドは失敗します。

使用することを強くお勧めします cabal-dev ではなく、日々のパッケージの構築用 cabal-install. 。サンドボクシングの利点は多数あり、のリスクを強く上回っています cabal-install 既にインストールしているもののために、依存関係チェーンの中央のどこかにパッケージをアップグレードすることにより、パッケージデータベースを破壊します。

使用の詳細については cabal-dev, 、これをお勧めします Reddit Post.

base GHCインストールごとに出荷される機能の多くを提供するHaskellモジュールのセットです。これは、ほとんどのHaskellユーザーが望む、必要とする便利なライブラリのコレクションです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top