Questions tagged [cabal]

Cabal is a package distribution and build system for the Haskell programming language.

Cabal stands for Common Architecture for Building Applications and Libraries. It is a package distribution and build system for the Haskell programming language. It is integrated with Hackage, a central package archive of open-source software written in Haskell. Cabal can refer both to the Cabal library which Setup.hs files can link against in order to build Haskell packages, and the command-line tool, which provides a range of additional functionality, including automatically fetching packages from , solving dependency graphs of version constraints to obtain install plans, managing sandboxed package environments, and much more.

More information about Cabal can be found at the Cabal website.

1793 questions
23
votes
1 answer

How to add a changelog to a Cabal package?

I see that Hackage 2 has a changelog field. This is a feature I've wanted for a long time. But multiple Google searches have failed to find a single shred of documentation about how you populate this field. Does anyone know how to do it?
MathematicalOrchid
  • 61,854
  • 19
  • 123
  • 220
22
votes
1 answer

Using text-icu library in Haskell on Mac OS

I am trying to use the text-icu library as a dependency in a cabal package on Mac OS. I have icu installed but when I try to build my package cabal gives me this error: Missing C libraries: icui18n, icudata, icuuc I'm am unsure what debugging…
user945202
  • 221
  • 1
  • 3
22
votes
1 answer

Haskell cabal: I just installed packages, but now the packages are not found

Over here is the only reason I can find that packages I'm installing using cabal are not being found by GHC: This happens when you install a package globally, and the previous packages were installed locally. Note that cabal-install install locally…
jameshfisher
  • 34,029
  • 31
  • 121
  • 167
22
votes
1 answer

Cabal install gtk failing

I'm trying to install gtk via cabal, however, I'm getting the following type errors when building it [ 22 of 209] Compiling Graphics.UI.Gtk.Embedding.Plug ( dist/build/Graphics/UI/Gtk/Embedding/Plug.hs, dist/build/Graphics/UI/Gtk/Embedding/Plug.o…
Matt
  • 4,029
  • 3
  • 20
  • 37
22
votes
1 answer

Cabal - how to install specific version of package

I need for example a minor version of a package, for example persistent-postgresql .. or hdbc-mysql or whatever. If I run cabal install persistent-postgresql it will install persistent-postgresql version 1.3 and then I get the error 'At least the…
Steffi
  • 867
  • 5
  • 14
  • 29
22
votes
2 answers

Cabal - Expose all modules while building library

Is it possible to tell Cabal to expose all modules while building a library? Right now I have to provide very long list of modules in the exposed-modules cabal configurtion file section.
Wojciech Danilo
  • 11,573
  • 17
  • 66
  • 132
21
votes
1 answer

Current state of integrating unit tests with Haskell's Cabal?

When i google for how to integrate unit tests with cabal files, i either find http://www.haskell.org/haskellwiki/How_to_write_a_Haskell_program which does not seem to describe the integration of HUnit/QuickCheck with the Cabal file or i see…
LennyStackOverflow
  • 2,228
  • 1
  • 19
  • 22
21
votes
2 answers

cabal: how to automatically update the build-depends field in the .cabal file?

Is there a way to automatically update the build-depends field in the .cabal-file? For example, if we start with the following .cabal file: name: HUnit version: 1.1.1 synopsis: A unit testing framework for Haskell homepage: …
21
votes
1 answer

Including data files only in cabal test suites

I have some data files that only belong with my test program and would be confusing to distribute with the main library. Unfortunately, the .cabal data-files field only applies to an entire cabal file, not a single section like the test-suite. If I…
Ganesh Sittampalam
  • 28,821
  • 4
  • 79
  • 98
21
votes
3 answers

Enable --hyperlink-source for "cabal install"

The command cabal haddock has very useful --hyperlink-source option. I would like to have the source hyperlinked when building documentation with cabal install. The ticket #517 seems to be just about it:…
Tener
  • 5,280
  • 4
  • 25
  • 44
21
votes
2 answers

Control.Monad.State found in multiple packages haskell

While evaluating the line "import Control.Monad.State" in a Haskell module, GHC gives me the following error: Could not find module `Control.Monad.State': it was found in multiple packages: monads-fd-0.0.0.1 mtl-1.1.0.2 Failed, modules loaded:…
Bill
  • 44,502
  • 24
  • 122
  • 213
21
votes
1 answer

Why are cabal reinstalls "always dangerous"?

When reinstalling a package using Cabal, one usually sees this warning: Warning: Note that reinstalls are always dangerous. Continuing anyway... What are some of the reasons behind this message?
pravnar
  • 833
  • 7
  • 11
20
votes
2 answers

Parallel Cabal Builds

Is there a way to compile packages in parallel when using cabal install similar to GNU make's -jN flag?
Nordlöw
  • 11,838
  • 10
  • 52
  • 99
20
votes
1 answer

How to completly remove packages installed by cabal?

I am trying to learn cabal, and have tested several my own little projects, now I want to clean them up. Basically, if I am working without a sandbox, my workflow is: run cabal init edit src/Mylib.hs, and then edit mylibname.cabal file run cabal…
Alaya
  • 3,287
  • 4
  • 27
  • 39
20
votes
3 answers

Can't compile haskell project: linking step fails

I'm having issues doing a cabal run on my project. This project used to run properly, and I'm not totally sure what change broke it. I think it is related to the issues between GHC 7.6 and OSX Mavericks (I'm using Darin Morrison's homebrew formulae…
benekastah
  • 5,651
  • 1
  • 35
  • 50