4
これは実際にはHow can I tell Cabal which dependency to use?の後続の質問です。 2つの依存関係を持っているhaskell-src-meta
私のプログラムの依存関係の1つに依存関係を指定するようにcabalに指示するにはどうすればよいですか?
パッケージ:
template-haskell >=2.7 && <2.9,
template-haskell >=2.4 && <2.7
とtemplate-haskell 2.7
が私のシステム上に構築しません。
cabal install --constraint="template-haskell == 2.5.0.0" haskell-src-meta
しかし、私はこれらの依存関係を持っている私が作成したソフトウェアのための独自のファイルを書きたいと思っています。
Build-depends: template-haskell-2.5.0.0
代わりに、私は実際にhaskell-src-meta
はビルド依存関係であることを言いたいが、さらにそれが上記と同じconstraint
とその依存関係をインストールする必要があることを徒党言う:持っているのに十分ではないようです。これを行う方法はありますか?
おそらく、私のソフトウェアをインストールするすべての(想像された)ユーザーにそれを漏らしてしまうのは残念です。むしろ、 'cabal install my-app'とタイプして、その' template-haskell'依存関係を私のcabalファイルに焼き付けられるようにするだけでした。 –
@NoahDaniels Hm。 'template-haskell'の他のバージョンがあなたのコンピュータ上に構築されないので、他の人に' template-haskell-2.5.0.0'を使用させたいのですか?これは悪い考えです。なぜなら、人々は、コンパイラに付属の 'template-haskell'のバージョンを使用して、別のバージョンをビルドしようとしないでください。 –
'template-haskell'のバージョンは' ghc'バージョンに依存しているようです。私が理想的にやってみたいのは、 'ghc'バージョンを適切な' template-haskell'バージョンにマップし、そのように問題を解決することです。 –