3

Я хотел бы установить Snap, но я новичок в Haskell и его платформе.Устанавливать полугруппы с помощью cabal

Я использую междусобойчик, чтобы установить оснастку и не удается установить полугруппам:

% cabal install snap 
Resolving dependencies... 
Configuring semigroups-0.8.3... 
Preprocessing library semigroups-0.8.3... 
Building semigroups-0.8.3... 
[1 of 4] Compiling Numeric.Natural.Internal (Numeric/Natural/Internal.hs, dist/build/Numeric/Natural/Internal.o) 
[2 of 4] Compiling Numeric.Natural (Numeric/Natural.hs, dist/build/Numeric/Natural.o) 
[3 of 4] Compiling Data.List.NonEmpty (Data/List/NonEmpty.hs, dist/build/Data/List/NonEmpty.o) 

Data/List/NonEmpty.hs:115:4: 
    Can't make a derived instance of `Data (NonEmpty a)' 
     (You need -XDeriveDataTypeable to derive an instance for this class) 
    In the data type declaration for `NonEmpty' 

Data/List/NonEmpty.hs:115:10: 
    Can't make a derived instance of `Typeable (NonEmpty a)' 
     (You need -XDeriveDataTypeable to derive an instance for this class) 
    In the data type declaration for `NonEmpty' 

Это моя версия междусобойчик:

% cabal --version 
cabal-install version 0.10.2 
using version 1.10.2.0 of the Cabal library 

Я видел, что полугруппы является зависимость для многих застёжкой зависимости, как я могу исправить эту установку?

Я бегу в убунту с гномом «Vous utilisez actuellement Ubuntu 10.04 LTS - ле Lynx Lucide - версия вылазку ан Avril 2010»

правок:

В semigroups.cabal файле, в пакете , я видел это:

if !impl(hugs) 
    other-extensions: DeriveDataTypeable 
    cpp-options: -DLANGUAGE_DeriveDataTypeable 

Возможно, мне придется совершать «имп (объятия)» вернуть что-то фальшивое? (Но я понятия не имею, что это такое :))

Спасибо

+0

Похоже, что пакет не был протестирован в отношении более позднего GHC, и для его флажков .cabal требуется 'XDeriveDataTypeable'. –

+0

Знаете ли вы, как я могу установить этот флаг? – niahoo

+0

Ow, добавленный к «его» .cabal flag, а не к моему. Hummm ... так что нечего делать ... – niahoo

ответ

2

Вы можете передать GHC-специфические флаги с помощью Кабал вызова

cabal install snap --ghc-option=-XDeriveDataTypeable 

Более подробную информацию об этих видах флагов в Раздел «Программы, используемые для построения» в Cabal Users Guide.

+0

работал. когда теперь я смотрю на эту командную строку, «-ghc-option» кажется настолько очевидным! ;) Спасибо – niahoo