2

プロジェクトのファイルを書き込もうとしていmyproj.cabalますが、インストールしたパッケージが見つからないようです。~/.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

私はここで何が間違っているのですか?

4

2 に答える 2

4

ユーザーの大暴れは長い答えを与えました。

簡単に言うと、「runghcSetup.hsconfigure」の代わりに「cabalconfigure」と「cabalbuild」と「cabalinstall」を使用すると、すべてがうまく機能するということです。

于 2011-01-15T23:12:10.180 に答える
1

ねえ、それはFAQでカバーされています!

runghc Setup.hs configureのデフォルトは--globalですが、cabalconfigureのデフォルトは--userです。グローバルパッケージはユーザーパッケージに依存できません。したがって、cabalプログラムを使用してパッケージをインストールしている場合は、それを使用して他のパッケージを構成することもできます。通常、runghcSetup.hsを使用する必要はまったくありません。

runghc Setup.hsインターフェイスを使用する必要があり(一部のシステムビルドスクリプトなど)、ユーザーパッケージdbからパッケージを取得する場合は、-userフラグを使用します。runghc Setup.hsインターフェースを常に使用する必要があり、ユーザーごとのインストールを行うのが面倒な場合は、cabalプログラムのデフォルトをcabal構成ファイル(〜/ .cabal / config)でグローバルインストールに設定できます。 。

于 2011-01-15T14:10:30.097 に答える