2012-06-17 1 views
2

Как я могу узнать, что нужно делать в module.cabal build-depends? Я имею в виду, что некоторые модули уже могут быть частью платформы Haskell, в то время как другие не могут? Как я узнаю/знаю, что я должен здесь написать, чтобы модуль, который я предлагаю, установил с помощью cabal на большинстве установок Haskell «там»?cabal build-depends: как его найти?

Моя ситуация в том, что я работаю над своими системами, но не могу вспомнить, для какого импорта мне действительно нужно было установить другой модуль и что было частью платформы Haskell, которую я использую. Как лучше всего найти путь от моей ситуации до инсталляционного пакета, который можно установить?

+1

'cabal init' с последней версией' cabal'is неплохо вывел пакеты; конечно, ограничения версии ограничены и основаны на том, что у вас есть, например. 'base == 4.5. *, container == 0.4. *, mtl == 2.1. *, array == 0.4. *, text == 0.11. *' – applicative

ответ

3

Если вы используете Cabal для создания своего проекта, он будет смотреть только на модули, перечисленные в файле .cabal, даже если у вас есть другие модули, установленные локально.

Итак, все, что вам нужно сделать, это запустить его как есть (с отсутствием в объявлении зависимости), и это даст вам ошибку для каждого модуля, который вам нужно указать. Я думаю, что ошибка даже говорит вам имя пакета.

+0

Могу ли я, кстати, сделать произвольные обновления описания (без обновление остальных) после того, как оно было опубликовано на хаке? –

+0

@JFritsch - Нет, обновление любой части пакета требует загрузки всей новой версии. – Carl