
On Dec 18, 2007 8:54 PM, Manuel M T Chakravarty
Judah Jacobson:
- Statically linking against GMP puts extra license requirements on any ghc-compiled program; thus, dynamic linking is preferable.
Dynamic linking is preferable, because it is the simplest way to comply with the LGLP (specifically, Section 4(d)) in a closed-source program. However, it is incorrect to say that static linking leads to extra license requirements. All that is required is to enable users to use the program with a modified version of the GMP. There are two simple ways of doing that: (a) provide access to the .o files of your program so that they can statically link with a different version of the GMP or (b) to provide a version of the program linking GMP dynamically alongside the statically linked version.
In any case, no change of the closed-source program's licence is required.
Thanks for the correction and list of alternatives; both seem pretty reasonable. Either way, I guess you're "optimizing" for the casual user rather than for a hacker wanting to update GMP who won't be stopped by needing to statically link a bunch of .o files anyway.
- On OS X, installing new frameworks is very easy (just drag-and-drop the framework into ~/Library/Frameworks or /Library/Frameworks; the former doesn't even need admin privileges). This doesn't seem like much to ask of users.
I think it is. It means, Haskell programs are more hassle to install than, say, C programs.
That's fair, although I think it's still less hassle than, e.g., installing a Ruby program on OS X Panther (which required first installing the whole of Ruby itself). Best, -Judah