/usr/bin/ld: cannot open -lgmp: No such file or directoryThe problem is that your system doesn't have the GMP library installed. If this is a RedHat distribution, install the RedHat-supplied gmp-devel package, and the gmp package if you don't already have it. There have been reports that installing the RedHat packages also works for SuSE (SuSE don't supply a shared gmp library).
My program fails with
fatal error: No threads to run! Deadlock?
The primary cause of this message is trying to use trace at
the same time as writing to stdout or stderr
(eg. putStr (trace "foo" "bar") will illustrate the error).
The problem is caused by overzealous locking in our I/O library, but
we don't have a complete fix at this time. A workaround is to start
your program like this:
main = seq stderr $ do ...
This allows you to trace while writing to stdout, but
tracing while writing to stderr will still cause a deadlock.