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
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe