Michael Poole wrote:
>Which FAQ question besides this one (with anchor #IfLibraryIsGPL) deals >with programs that use a GPLed library? > > If a library is released under the GPL (not the LGPL), does that >mean that any program which uses it has to be under the GPL? Yes, >because the program as it is actually run includes the library.
You know, this is the muddiest part of this, IMHO. Consider q_hello_world.c and the default Qt in your typical Debian system.
The (copyrightable) work is "q_hello_world.c". Period. The ELF q_hello_world is another expression of q_hello_world.c, made by an automated process (or a series of automated/automatable, non-intelectually-novel processes namely "make q_hello_world").
But "q_hello_world" (ELF) does *not* "include" any part of Qt. Even if it "includes" the Qt symbols, they are not "the Qt symbols", they are (for instance) "the stdio.h symbols". But it's well established in case law that interface definition symbols are not copyrightable. So, let's move on.
Imagine the "working memory space" of a running instance of "q_hello_world". Ok, you can argue that this memory space has a copy of Qt mapped onto it. But it's not "included" in q_hello_world in no way. Besides, an automated process mapped and fixed up symbols of Qt onto this memory space. There is no intellectual work involved.
And the main item of this is: the program does *not* _include_ the library. This is why dynamic linking mostly put (IMHO) the GPL down. The linking phase is in the running phase of the software, and the second para of GPL section 0 is clear:
<< Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, >>
So, unless you can determine by abstraction, filtration and comparison that q_hello_world.c is a derivative work of Qt (say for instance that it fiddles with intimate internal structures of Qt to print its greeting, making it dependend on a certain version of Qt, not by means of Qt's interface, but thru its implementation...) the GPL does NOT apply to q_hello_world.c. Its author is *not* copying, distributing, or modifying Qt. The GPL stated that other activities are NOT covered. Running the code inside Qt is a granted right.
>That seems the same as what I said except that the FAQ uses "includes" >where I used "is a derived work of." (-legal went through the "mere >aggregation" flame war recently, and I would rather not repeat it.) > >Michael Poole
No flames intended, sorry if this is tangent to the subject (if not OT altogether):
* "derived work of" (I prefer the word "derivative") is an expression with *legal* meaning, namely it means << work that constitutes a novel intellectual transformation of the original work >> (BR Law 9610/98 "Author's Rights Act", translation mine, I know USC 17 is similar and others too)
The GPL avoids this expression, and uses the definition "work based on the program": << The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. >>
The inconsistency between the parts of this paragraph is beyond remedy: it says first that a "work based on the Program" means << the Program or any derivative work under copyright law. >> Is that it? no, really, it really, really, means << a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. >> Which one?
If you consider that the first one is correct (*), then the LGPL is just a marketing ploy. :-) If you consider the second one as being the correct, then the flash-flasher program is banned unless you clarify in flasher's license that "I consider one ELF binary as a << volume of storage or distribution medium >> in the terms of the last para of the section #2 of the GPL" (yes, you can do that if you are the copyright holder).
(*) as I do, for consistency with section 0 para 2...
HTH,
Massa
-- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

