Frage

Der üblicher Weg eine Haskell-Bibliothek mit anderen Programmierern zu teilen, ist ein Cabal-Paket zu erstellen und laden Sie sich auf http: // Hackage .haskell.org . Ich habe eine Bibliothek geschrieben ich teilen möchte, und Ich habe erfolgreich ein Cabal Paket mit den Richtlinien für die Erstellung von Online-Kabalen-Dateien erstellt. Ich habe das Paket gebaut und installiert es lokal funktioniert gut. Jetzt will ich es Hackage zu. Aber cabal upload will eine tar.gz-Datei. Es gibt reams von Cabal Dokumentation, und ich kann nicht finden, was in diesem Tar.gz gehen soll, oder wie soll ich es schaffen.

Wer weiß, oder weiß, wo ich herausfinden kann, wie man eine .tar.gz erstellen, die richtig mit cabal upload funktionieren werden?

War es hilfreich?

Lösung

das Wiki :

Da der Code cabalised ist, können wir ein Tarball mit Kabale zu installierende direkt erstellen (Sie können auch verwenden runhaskell Setup.hs Sdist, aber Sie müssen auf Ihrem System tar 1 ):

$ cabal sdist
Building source dist for haq-0.0...
Source tarball created: dist/haq-0.0.tar.gz

Dies hat den Vorteil, dass Cabal wird die Überprüfung ein bisschen mehr tun, und sicherzustellen, dass die Tarball die Struktur hat, dass HackageDB erwartet. Beachten Sie, dass es funktioniert die Lizenzdatei benötigen zu existieren. Es Pakete bis die Dateien benötigt, um das Projekt zu erstellen; andere Dateien (wie Test.hs in dem obigen Beispiel und unsere README) aufzunehmen, müssen wir hinzufügen:

extra-source-files: Tests.hs README

auf die .cabal Datei alles aufgenommen haben.

Andere Tipps

Oder wenn Sie mit darcs,

darcs dist

Beachten Sie, dass cabal sdist nur in der .cabal Datei aufgelisteten Dateien aufheben, so dass Sie benötigen könnten READMEs etc unter extra-source-files:

hinzufügen

Sie können prüfen, die Sie haben eine gültige Tarball mit

cabal check

, die die gleichen Tests ausführt, dass Hackage ausgeführt wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top