
I'm trying to run hat on some unit tests. They use HUnit-1.0, which I have under the tests directory, in tests/HUnit-1.0/; I've been interpreting the tests using runhaskell. When I run hmake -package parsec -i.. -iHUnit-1.0 RunTests; ./RunTests, everything works exactly as it does when I'm interpreting. When I add a -hat to the options, I get the following error: hat-trans -i.. -iHUnit-1.0 HUnit-1.0/HUnitLang.lhs Wrote Hat/HUnit-1.0/HUnitLang.hs /usr/bin/ghc -package parsec -i.. -iHUnit-1.0 -c -package hat -o HUnit-1.0/Hat/HUnitLang.o HUnit-1.0/Hat/HUnitLang.hs ghc-6.4.2: error: directory portion of "HUnit-1.0/Hat/HUnitLang.o" does not exist (used with "-o" option.) If I manually create HUnit-1.0/Hat: hat-trans -i.. -iHUnit-1.0 HUnit-1.0/HUnitLang.lhs Wrote Hat/HUnit-1.0/HUnitLang.hs /usr/bin/ghc -package parsec -i.. -iHUnit-1.0 -c -package hat -o HUnit-1.0/Hat/HUnitLang.o HUnit-1.0/Hat/HUnitLang.hs ghc-6.4.2: file `HUnit-1.0/Hat/HUnitLang.hs' does not exist If I switch into the HUnit-1.0 directory and run "hmake -hat HUnitLang.lhs": hmake -hat HUnitLang.lhs hat-trans HUnitLang.lhs Wrote Hat/HUnitLang.hs /usr/bin/ghc -c -package hat -o Hat/HUnitLang.o Hat/HUnitLang.hs Hat/HUnitLang.hs:52:38: Could not find module `Hat.PreludeBuiltin': use -v to see a list of the files searched for In the fourth argument of `Hat.Hat.uapp1', namely `aioError' In the definition of `hassertFailure': hassertFailure fmsg p = Hat.Hat.uapp1 p59v23v59v60 p59v23v59v29 p aioError hioError (Hat.Hat.uapp1 p59v32v59v60 p59v32v59v40 p auserError huserError (Hat.Hat.uapp2 p59v43v59v60 p59v55v59v56 p (+++) (*++) (ghunitPrefix p59v43v59v53 p) fmsg)) I'd like to be able to trace my code; I'm indifferent to whether or not I trace the code within HUnit. Any suggestions on how I can do this? Katerina Barone-Adesi