RE: cabal beginner issues (other-modules, build-depends)

On 22 September 2005 23:02, Andrew Pimlott wrote:
2. Similar comments apply to build-depends. I wrote a module Foo.hs:
module Foo (foo) where import Control.Monad.Identity foo = runIdentity (return ())
and a cabal file (working from an example obviously):
Name: foo Version: 1.1 License: BSD3 Build-Depends: base Exposed-modules: Foo
This built and installed without error, but when I created another module that imports Foo and tried to compile it with "ghc --make", I got undefined references to Control.Monad.Identity. Eventually, I found that I need to add mtl to build-depends. Again it would have been better to get an error during package creation, and this was particulary tricky to figure out because "build-depends" sounds like it should only affect package at build-time.
This is fixed in newer versions of Cabal when used with newer versions of GHC (6.4.1). Missing dependencies are now reported as build errors, because GHC is invoked with the -hide-all-packages option. Cheers, Simon
participants (1)
-
Simon Marlow