Personal tools

Cabal

From HaskellWiki

(Difference between revisions)
Jump to: navigation, search
(Information for package users: Added a link to "What I Wish I Knew When Learning Haskell 2.1", cabal section)
(Information for package users: Added a link to 'Haskell Best Practices for Avoiding "Cabal Hell"')
Line 21: Line 21:
 
* Blog article: [http://ivanmiljenovic.wordpress.com/2010/03/15/repeat-after-me-cabal-is-not-a-package-manager/ Repeat after me: “Cabal is not a Package Manager”]
 
* Blog article: [http://ivanmiljenovic.wordpress.com/2010/03/15/repeat-after-me-cabal-is-not-a-package-manager/ Repeat after me: “Cabal is not a Package Manager”]
 
* [http://www.mew.org/~kazu/proj/cab/en/ cab], a maintenance command of Haskell cabal packages
 
* [http://www.mew.org/~kazu/proj/cab/en/ cab], a maintenance command of Haskell cabal packages
  +
* Blog article: [http://softwaresimply.blogspot.fr/2014/07/haskell-best-practices-for-avoiding.html Haskell Best Practices for Avoiding "Cabal Hell"]
   
 
== Information for package developers ==
 
== Information for package developers ==

Revision as of 22:37, 31 July 2014

The Haskell Cabal:

The Common Architecture for Building Applications and Libraries

http://www.haskell.org/cabal/

1 Summary

  • Cabal is a package and build system. Cabal is only involved in the creation of packages and the building of their contents. It does not manage packages.
  • Cabal-Install installs cabal packages. It is distinct from Cabal (the build system). This often confuses new users. Furthermore, Cabal-Install is not a fully featured package manager. For example, it cannot install non cabal packaged dependencies, it cannot uninstall packages, nor can it automatically upgrade installations.

2 Information for package users

3 Information for package developers