[Haskell-cafe] Cabal

Gregory Crosswhite gcross at phys.washington.edu
Sun Nov 8 23:47:52 EST 2009


Actually, let me clarify my point:  I have rarely encountered problems  
when using Cabal as a package distribution system, but I have run into  
problems when using it as a build system in a non-trivial manner.  For  
example, when I wanted to build a lot of small utility programs I  
found that it was re-compiling commonly-shared source files for each  
program, rather than compiling the source file once and re-using the  
object file.  This was sufficiently annoying that I migrated the build  
process of my utilities to scons.

Having said that, most libraries tend not to have special needs as far  
as the build process is concerned (unless they are doing complicated  
things to interface with a foreign framework), so the limitations of  
Cabal is not usually be a problem in practice, and the Cabal  
infrastructure makes installing packages very convenient.

Cheers,
Greg


On Nov 8, 2009, at 8:28 PM, Gregory Crosswhite wrote:

> I have rarely encountered problems when creating or installing  
> packages using Cabal.  In fact, the opposite is the case:  I find it  
> annoying when installing packages that haven't been cabalized  
> because they don't pull in all of their dependencies automatically.
>
> It looks like there was a problem building readline, perhaps because  
> it had trouble finding libreadline on your system.  If this is the  
> case, then the problem has nothing to do with Cabal but merely with  
> the fact that a single dependent package failed to install.  Have  
> you tried building readline by itself and seeing the error message  
> that it gives?
>
> Cheers,
> Greg
>
> On Nov 8, 2009, at 7:29 PM, Philippos Apolinarius wrote:
>
>> I made small improvements in the Small Japi Binding, and asked how  
>> to make it available. I received a few private messages advising me  
>> to build and package the library using a tool called cabal. Since I  
>> have used installation tools for PLT, R  and LaTeX libraries, I  
>> thought cabal was something similar. However, I noticed that there  
>> are a lot of complaints against cabal.  Therefore, I decided to  
>> install cabal, and try it. It seems that it is easier to install  
>> packages by hand than using cabal.  Here is a typical cabal session:
>>
>> D:\ghc\ghcapi>cabal update
>> Downloading the latest package list from hackage.haskell.org
>>
>> D:\ghc\ghcapi>cabal install mkcabal
>> Resolving dependencies...
>> Downloading pcre-light-0.3.1...
>> Configuring pcre-light-0.3.1...
>> Downloading readline-1.0.1.0...
>> Configuring readline-1.0.1.0...
>> cabal: Error: some packages failed to install:
>> mkcabal-0.4.2 depends on readline-1.0.1.0 which failed to install.
>> pcre-light-0.3.1 failed during the configure step. The exception was:
>> exit: ExitFailure 1
>> readline-1.0.1.0 failed during the configure step. The exception was:
>> exit: ExitFailure 1
>>
>> As one can see, it is much more difficult to use than R  
>> installation tools, or MikTeX installation tools.  If cabal is so  
>> difficult, why use it? I am sure that I have done something very  
>> stupid mistake, but believe me, a lot of people is trying to use  
>> cabal and failing. I am not  sure that it is a good idea to  
>> distribute libraries using cabal. However, this is irrelevant,  
>> because I am sure that creating a package with cabal is well beyond  
>> my powers. It is much easier to write a complete JAPI library, than  
>> packaging it in cabal.
>>
>>
>> Looking for the perfect gift? Give the gift of Flickr! 
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20091108/044df7d0/attachment.html


More information about the Haskell-Cafe mailing list