11.2. Not linking with DLLs

If you want to build an executable that doesn't depend on any ghc-compiled DLLs, use the -static option to link in the code statically.

Notice that you cannot mix code that has been compiled with -static and not, so you have to use the -static option on all the Haskell modules that make up your application.