2011-01-15 13 views
2

私は私のプロジェクトのためにmyproj.cabalファイルの書き込みしようとしているが、それは私が~/.cabal〜/ .cabalにインストールしたパッケージをmyproj.cabalに使用する方法を教えてください。

% cabal list HTF 
* HTF 
    Synopsis: The Haskell Test Framework 
    Latest version available: 0.6.0.1 
    Latest version installed: 0.6.0.1 
    License: LGPL 
% ghc-pkg list HTF 
/Library/Frameworks/GHC.framework/Versions/612/usr/lib/ghc-6.12.3/package.conf.d 
/Users/rampion/.ghc/i386-darwin-6.12.3/package.conf.d 
    HTF-0.6.0.1 
% cat Setup.hs 
import Distribution.Simple 
main = defaultMain 
% cat Clue.cabal 
... 
executable clue-tests 
    ghc-options: -Wall -F -pgmF htfpp 
    build-depends: QuickCheck, HTF 
    main-is: Tests.hs 
    hs-source-dirs: tests src 
% runhaskell Setup.hs configure 
Configuring Clue-0.1.0... 
Setup.hs: At least the following dependencies are missing: 
HTF -any 

にインストールしたパッケージを見つけることしていないようだ、私はここで間違って何をしているのですか?

+0

HTFは 'ghc-pkg list'コマンドで指定されたリストに表示されますか? –

+0

@Alp:はい。それを含むように編集する。 – rampion

答えて

4

ユーザーランパンが長い答えを与えました。

短い答えは、 'runghc Setup.hs configure'の代わりに 'cabal configure'と 'cabal build'と 'cabal install'を使用するとすべてがうまく動作するということです。

+1

...オハイオ州、ちょっと、それは完全に動作します。そうしよう。 – rampion

1

ねえ、それはcovered in the FAQです!

runghc Setup.hs のconfigureのデフォルトは--globalですが、徒党を構成するためのデフォルト は--userです。グローバル パッケージは、ユーザー パッケージに依存することはできません。パッケージ を使用してパッケージをインストールする場合は、 パッケージを使用して、他の パッケージを設定することもできます。通常、runghc Setup.hsを使用する必要は全くありません。

あなたは インターフェイスSetup.hs runghcを使用する必要があります(例えば、いくつかのシステムで スクリプトを作成)し、あなたはそれがユーザーパッケージDBから パッケージをピックアップする場合は、その後 は--userフラグを使用します。あなたは は常にrunghc Setup.hsインタフェースを使用することと、ユーザーごと やっている場合はインストールの痛みである、あなたは に徒党プログラムの デフォルトを設定することができます徒党コンフィグ ファイルのグローバルインストール(〜も/.cabal/config)。

関連する問題