
peteg42:
On 02/06/2008, at 5:26 AM, Don Stewart wrote:
pieter: Yes, it is entirely possible to statically link entire CGI apps.
You might want to watch out for a bug in GHC 6.8.2 that means GHC's "- static" flag doesn't work. (At least for me, at least on Debian: the "- lpthread" flag is passed before the "-lrt" one, and symbols are left unresolved as a result.) Apparently the near-to-release 6.8.3 will fix this issue.
Presumably dons is using a more recent GHC than 6.8.2, or other (BSD?) platforms are not affected.
Yeah, that's the case.
Note also you may have to tweak sundry .cabal files to add "extra- libraries" fields. As an example, I added this to HSQL's PostgreSQL backend to get it to statically link:
extra-libraries: pq, crypt, pthread
(If anyone cares you need to build PostgreSQL without kerberos as that doesn't seem to statically link any more.)
Hey Pete, Can you add these caveats to the wiki page? haskell.org/haskellwiki/Practical_web_programming_in_Haskell#Deploying_statically_linked_applications