[Haskell-beginners] 'cabal install hdirect' can't find hdirect

Larry Evans cppljevans at suddenlink.net
Sun Jul 4 11:06:11 EDT 2010


On 07/04/10 07:28, Daniel Fischer wrote:
> On Sunday 04 July 2010 13:45:01 you wrote:
>   
>> src/Lex.lhs:330:8:
>>     Illegal signature in pattern: Int
>>         Use -XPatternSignatures to permit it
>> cabal: Error: some packages failed to install:
>> hdirect-0.21.0 failed during the building phase. The exception was:
>> exit: ExitFailure 1
>> ~/download/haskell/libs $ which happy
>> /home/evansl/.cabal/bin/happy
>> ~/download/haskell/libs $
>>
>> Any ideas about how to solve this problem?
>>     
>
> Sure. First, tell the maintainer, he might want to fix it for all.
>   
Done.
> Then, the quick fix for you,
> * unpack the .tar.gz
> * change the version in the .cabal file (my preferred method is appending a 
> ".1" to the version number). You need that in case you want to build some 
> library which depends on hdirect, so that cabal-install picks your bumped 
> newer version rather than the newest version on hackage.
> * make it compile, e.g. by adding a field
> Extensions:     PatternSignatures
> to the cabal file, or by putting a 
> {-# LANGUAGE PatternSignatures #-}
> pragma to the offending file.
> Then run cabal install in the unpacked and modified directory.
> Several iterations of edit file; cabal install may be necessary.
>
>   
Downloaded:

http://hackage.haskell.org/packages/archive/hdirect/0.21.0/hdirect-0.21.0.tar.gz

then unzipped and untarred it then edited hdirect.cabal by adding:

      Extensions:     PatternSignatures

Below the line:

library

However, still got:

src/Desugar.lhs:2053:1:
    Warning: Pattern match(es) are non-exhaustive
             In a case alternative:
                 Patterns not matched:
                     (_, [])
                     (_, IDL.IncludeEnd : _)
                     (_, (IDL.IncludeStart _) : _)
                     (_, (IDL.Pragma _) : _)
                     ...
[60 of 65] Compiling IDLToken         ( src/IDLToken.lhs, 
dist/build/hdirect/hdirect-tmp/IDLToken.o )
[61 of 65] Compiling LexM             ( src/LexM.lhs, 
dist/build/hdirect/hdirect-tmp/LexM.o )
[62 of 65] Compiling Lex              ( src/Lex.lhs, 
dist/build/hdirect/hdirect-tmp/Lex.o )

src/Lex.lhs:330:8:
    Illegal signature in pattern: Int
        Use -XPatternSignatures to permit it
cabal: Error: some packages failed to install:

Any further help is appreciated.

-regards,
Larry



More information about the Beginners mailing list