[nhc-users] Hat + GHC + -package util

Malcolm Wallace Malcolm.Wallace@cs.york.ac.uk
Mon, 18 Mar 2002 12:23:58 +0000


> $ hmake -T -hat -package util -package hat  Dicedist

First of all, the -T option and the -hat option are mutually exclusive:
  * use  -T  with  hmake -nhc98
  * use  -hat  with  hmake -ghc

Secondly, the "-package hat" option is unnecessary, because hmake adds
it automatically where it is needed.

> My program uses the GetOpt module from the util package in ghc

Right.  You can build a tracing version of any library for which you
have the source code (and which is Haskell'98 compliant), but at the
moment it is impossible to trace a library when the source code is not
directly available to the compiler.  We have made a special exception
for the Haskell'98 Prelude and Libraries, because these are part of
the language standard, but we do not supply pre-built tracing versions
of any of the other libraries in the GHC package system, for two reasons:

  * there are so many of them, and we have only just started to support
    tracing with ghc

  * we aren't yet sure how to use/abuse GHC's package system to ensure
    that the tracing versions are available under the same names, even
    though the code is different

As it happens, I believe the GetOpt library is Haskell'98 compliant,
so the simplest solution for now is just to find a copy of the source
code for it, and place it in the same directory as your program.
(But you may need to remove it again when you build your program
normally without tracing.)

Regards,
    Malcolm