I suspect the OP's exectuable is already being compiled static.

Yes; which leaves the question of why it requires libgmp.so, and if it's static the only things I can think of are (a) it's using dlopen(), or (b) it's running something else that is not static and requires libgmp.so.

You built ghc yourself?

And ran ldd on $bindir/ghc or  $libdir/ghc-version ?

Jens