[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: LGPL module linked with a GPL lib

** Raul Miller ::

> On 7/27/05, Humberto Massa Guimarães 
> <humberto.massa@almg.gov.br> wrote:
> > Static linking can *not* create a derived work, because it is an
> > automatic process. Poster case: is hello, generated from hello.c:
> > 
> >   #include <stdio.h>
> >   int main(int argc, char** argv) {
> >     printf("Hello\n");
> >     return 0;
> >   }
> > 
> > a derivative work of something it's (statically) linked to?
> > The answer is no, because derivative works, as intelligent
> > transformations, can only appear when you *create* a work.
> As Andrew Suffield has pointed out, this is a strawman 
> argument.  But I'd like to reiterate that point.


Fact: the creation of a derivative work is the application of some transformation on the original work.

The above snippet (which isn't even copyrightable, for its sheer size and the necessity of expressing the same thing in the same language) is NOT a derivative work of ANY libc implementation, even if (for some implementation) it NEEDED to be statically linked. Because when I created the snippet (and I created it) I did NOT apply any transformation to anything else that is copyrighted or event copyrightable.

The binary, OTOH, when statically linked, contains (parts of) the linked libc implementation, copied, so the linked libc license terms must be followed to distribute such binary, if possible at all.

Now, a dynamic linked binary does NOT contain ANY copyrightable parts of the libc implementation. So, the distribution of the dynamic linked binary does NOT depend on authorization from the copyrights holders of the libc implementation. MORE SO because you can use such binary with another, compatible, libc implementation.

Even if (as is our real case) you want to distribute together the binary and the libc implementation, one being GPLd and the other, GPL-incompatible-licensed, this is a case of mere agreegation because (a) the GPL says so when you read it correctly, in opposition to "a derivative work under copyright law" and (b) because you *are* just aggregating things. If you develop another libc and install it in your system, and ldconfig away everyone to it, one of the parts of this equation would have been completely erased. *This* is the kind of interoperability that has protected in the Lexmark case, for example.

Reply to: