| Mind you, I'm nost sure why runhugs is loading Dynamic.hs, or IOExts;
| hugs did not.
Aha! I think you might have hit on the root of the problem here!
I had been assuming that the request for Dynamic came from your
program ... but now I see the script, I see that it doesn't. The
request for dynamic is actually coming from runhugs itself, which
loads Dynamic (and then IOExts, which Dynamic imports) as part of
the process of starting a Hugs server. This doesn't happen in the
hugs interpreter. From your transcript, Hugs is clearly managing
to find the prelude (in lib/) and the Dynamic library (in lib/hugs/)
but it doesn't seem to be able to find IOExts (which is in lib/exts/).
Perhaps this last component isn't included on your path for some
reason, or the file isn't where it was supposed to be?
Some tests:
1) Check that you have an IOExts.hs in lib/exts/
2) Fire up hugs and :l Dynamic ... does this work?
3) Try :set and see what the search path looks like.
Does it contain lib/exts/?
4) Take a look at the options.h file in src (this
will have been built for you by configure). Are
HUGSPATH and HUGSDIR set to reasonable values?
Hope this helps!
Mark