Как мне создать подходящий файл .tar.gz для использования с `cabal upload`?

StackOverflow https://stackoverflow.com/questions/2587635

Вопрос

Стандартный способ поделиться библиотекой Haskell с другими программистами - создать пакет Cabal и загрузить его на http://hackage.haskell.org.. Отказ Я написал библиотеку, которую хочу поделиться, и я успешно создал пакет Cabal, используя руководящие принципы онлайн для создания файлов Cabal. Я построил пакет и установил его локально - отлично работает. Теперь я хочу загрузить его в заработок. Но cabal upload Хочет файл .tar.gz. Есть ремень Cabal Documentation, и я не могу найти, что должно войти в этот .tar.gz или как я должен создать его.

Кто знает или знает, где я могу узнать, как создать .tar.gz, который будет работать должным образом с cabal upload?

Это было полезно?

Решение

От вики:

Поскольку код CABALIFED, мы можем создать тарбол с установкой Cabal-Install (вы также можете использовать SDISt runchaskell setup.hs, но вам нужна tar в вашей системе 1):

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

Это имеет преимущество, что Cabal сделает немного больше, и гарантирует, что тарлбол имеет структуру, которая ожидает, что HackagedB ожидает. Обратите внимание, что это требует существующего файла лицензий. Он упаковывает файлы, необходимые для создания проекта; Чтобы включить другие файлы (например, test.hs в приведенном выше примере, а наше readme), нам нужно добавить:

extra-source-files: Tests.hs README

к .cabal файл, чтобы все включено.

Другие советы

Или если вы используете darcs,

darcs dist

Обратите внимание, что cabal sdist будет только подбирать файлы, перечисленные в .cabal файл, так что вам может потребоваться добавить readmes etc под extra-source-files:

Вы можете проверить у вас действительный тарбол с

cabal check

который запускается те же тесты, которые зарабатывают заработок.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top