「cabal Upload」で使用する適切な .tar.gz ファイルを作成するにはどうすればよいですか?
-
24-09-2019 - |
質問
Haskell ライブラリを他のプログラマと共有する標準的な方法は、Cabal パッケージを作成して、 http://hackage.haskell.org. 。私は共有したいライブラリを書きました、そして、私はCabalファイルを作成するためにオンラインでガイドラインを使用してCabalパッケージをうまく作成しました。パッケージをビルドしてローカルにインストールしましたが、正常に動作しました。今度はそれを Hackage にアップロードしたいと思います。しかし cabal upload
.tar.gz ファイルが必要です。がある 連 Cabal のドキュメントを調べてみましたが、この .tar.gz に何が入るのか、どのように作成すればよいのかがわかりません。
で適切に動作する .tar.gz を作成する方法を誰が知っているか、どこで調べられるかはわかりません。 cabal upload
?
解決
から ウィキ:
コードは cabalize されているため、cabal-install を使用して tarball を直接作成できます (runhaskell Setup.hs sdist を使用することもできますが、システム上に tar が必要です) 1):
$ cabal sdist
Building source dist for haq-0.0...
Source tarball created: dist/haq-0.0.tar.gz
これには、Cabal がもう少しチェックを行い、tarball が HackageDB が期待する構造を持っていることを確認するという利点があります。LICENSE ファイルが存在する必要があることに注意してください。プロジェクトのビルドに必要なファイルをパッケージ化します。他のファイル (上記の例の Test.hs や README など) を含めるには、以下を追加する必要があります。
extra-source-files: Tests.hs README
.cabal ファイルに追加して、すべてを含めます。
他のヒント
それとも、darcsのを使用している場合、
darcs dist
あなたはcabal sdist
下などのREADMEを追加する必要がある場合がありますので、.cabal
のみ、extra-source-files:
ファイルにリストされているファイルを拾うことに注意してください。
あなたの
との有効なtarballを確認することができましたcabal check
Hackageを実行するのと同じテストを実行します。