<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">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.<div><br></div><div>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.</div><div><br></div><div>Cheers,</div><div>Greg<br><div><br></div><div><br><div><div>On Nov 8, 2009, at 8:28 PM, Gregory Crosswhite wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">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.<div><br></div><div>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?</div><div><br></div><div>Cheers,</div><div>Greg</div><div><div><div><div><br><div><div>On Nov 8, 2009, at 7:29 PM, Philippos Apolinarius wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><table cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top" style="font: inherit;">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:<br><br>D:\ghc\ghcapi>cabal update<br>Downloading the latest package list from hackage.haskell.org<br><br>D:\ghc\ghcapi>cabal install mkcabal<br>Resolving dependencies...<br>Downloading pcre-light-0.3.1...<br>Configuring pcre-light-0.3.1...<br>Downloading readline-1.0.1.0...<br>Configuring readline-1.0.1.0...<br>cabal: Error: some packages failed to install:<br>mkcabal-0.4.2 depends on readline-1.0.1.0 which failed to install.<br>pcre-light-0.3.1 failed during the configure step. The exception was:<br>exit: ExitFailure 1<br>readline-1.0.1.0 failed during the configure step. The exception was:<br>exit: ExitFailure 1<br><br>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.<br><br></td></tr></tbody></table><br> <hr size="1"> Looking for the perfect gift?<a href="http://www.flickr.com/gift/"><b> Give the gift of Flickr!</b></a>_______________________________________________<br>Haskell-Cafe mailing list<br><a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br><a href="http://www.haskell.org/mailman/listinfo/haskell-cafe">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br></blockquote></div><br></div></div></div></div></div>_______________________________________________<br>Haskell-Cafe mailing list<br><a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br><a href="http://www.haskell.org/mailman/listinfo/haskell-cafe">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br></blockquote></div><br></div></div></body></html>