Dynamic linking, was: Re: Dispelling BSD License Misconceptions
chuck at codefab.com
Thu Jan 18 19:41:10 UTC 2007
On Jan 17, 2007, at 7:02 PM, Matthew Flaschen wrote:
>>>> I am not aware of any court decision which has indicated that
>>>> linking produces a derivative work.
>>> I'm not well versed in case law; you're probably right. However, I
>>> don't think there has been a decision the other way either. In any
>>> case, many (including some experts) do assert this.
>> I wonder if you might name these experts and point to their reasoning
>> for closer evaluation?
> Well, Eben Moglen comes to mind. He said
> "The language or programming paradigm in use doesn't determine the
> of compliance, nor does whether the GPL'd code has been modified. The
> situation is no different than the one where your code depends on
> or dynamic linking of a GPL'd library, say GNU readline. Your code, in
> order to operate, must be combined with the GPL'd code, forming a new
> combined work, which under GPL section 2(b) must be distributed under
> the terms of the GPL and only the GPL."
> in response to a question about using GPLed JARs. It's clear he
> believes dynamic linking of GPL software (e.g. readline) creates a
> derivative work that must be licensed under the GPL if distributed.
Notice the key phrases "...where your code depends on static or
dynamic linking of a GPL'ed library..." & "...in order to operate".
If your program cannot operate without the GPL'ed library, I would
agree with Eben's position that whether the program uses static or
dynamic linking doesn't matter; the program is a derivative work of
the GPL'ed library.
However, I'd be curious to hear his opinion with regard to the
situation where the program does not depend on the GPL'ed library to
run, but might optionally use it via dynamic linking. I did a quick
search on this mailing lists' archives with regard to that question;
in doing so, I noticed the following:
...where he's quoted as saying (with regard to whether a situation
would create a derivative work, ppg 15-16):
"A module written to be plugged into an API defined specifically to
support dynamic loading?
[ CC:ing Eben so he might clarify his position, if he wishes to do
More information about the License-discuss