要与其他程序员共享一个Haskell库的标准方法是创建一个包卡瓦尔并将其上传到 HTTP:// hackage .haskell.org 。我写了一个库我要份额, 我已经成功地创建了使用指南在线创建文件的阴谋小集团包。我已经建立了包并安装它本地工作正常。现在我想将它上传到Hackage。但cabal upload希望.tar.gz文件。还有的里姆斯的惊天动地的文档,我不能找到什么是应该进入这个名为.tar.gz或者我应该如何创建它。

谁知道,或者知道哪里可以找到答案,如何创建是.tar.gz,将与cabal upload正常工作?

有帮助吗?

解决方案

发件人维基

由于代码cabalised,我们可以创建一个压缩包直接小集团安装(你也可以使用runhaskell Setup.hs sdist,但你需要焦油系统的 1个):

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

这具有的优点是将卡瓦尔做更多的检查,并确保压缩包具有HackageDB期望的结构。请注意,它确实需要许可证文件存在。它封装了建项目所需要的文件;以包括其他文件(如Test.hs在上面的例子中,我们的自述),我们需要添加:

extra-source-files: Tests.hs README

到.cabal文件已包括一切。

其他提示

或者,如果你使用的darcs,

darcs dist

请注意cabal sdist只会拿起在.cabal文件中列出的文件,所以你可能需要添加下extra-source-files: README文件等。

您可以检查你与一个有效的压缩包

cabal check

其中运行相同的测试,Hackage将运行。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top