On Fri, Feb 11, 2000 at 09:38:10PM +1100, Don Sanders wrote: > On Thu, 10 Feb 2000, Joseph Carter wrote: > > IMO the contentions lie solely in section 2 of the GPL. Satisfy those > > requirements and the license would be compatible with the GPL. > > I have made an honest effort to locate a thread where you explain "the > contentions" but have been unable to do so. Could you please post the > url of (an archived copy of) a message in such a thread. Repeating myself will be a lot faster than wading through an ocean of "debate". In (relatively) short: The GPL requires that in order to distribute binaries you must provide under the GPL's terms (someone else can (and probably will) nitpick what that means) the full and complete source code to that binary. This includes all object files in cases of static linking (that was never questioned) since the binary built from those objects obviously contains code built from the source of all of the modules. Before I continue, I should address the "special exception" clause following 2(b) of the GPL.. Certain components of the system (things such as libc for example) can be considered core system components. Provided that the binary based on GPL'd code is not distributed with these components, you do not have to provide those components' source under the GPL. Any Linux distribution claiming to be providing some portions of KDE legally under this exception is ignoring the exception's conditional, or trying to mince words such that something pretty obviously not intended can be considered allowable by the letter of the license. That's also a nitpick for another argument. Now, the primary point of contention here in most people's vision is that dynamic linking is different than static linking. Since the code is never actually part of the binary before it is run, the popular argument for the legality of things such as kghostscript goes, distributing that binary is not a violation of the GPL. Justification for it being allowed at runtime is that running the program is considered fair use and out of the GPL's scope. (That scope limitation is not in question, running a program you have obtained legally IS fair use..) Where I disagree with the above argument is in its premise: "The source code for Qt is never actually part of the application before it is run." Header files constitute source code, IMO. They must be included into the program during the compile process (same as for a static binary) in order for the compiler to establish the API used by Qt. Further, once the compile pass is complete and the resulting objects are then linked together and dynamically with the Qt shared object, still more of Qt is included in the resulting binary when Qt's ABI symbols are including---a necessary step for the application to know later how to load and access the Qt library. These two inclusions of portions of Qt require that the source code for those portions be released under the terms of the GPL. Not all of Qt would have to so be released of course since only those portions are relevant to the distributed binary. Unfortunately those portions are not independant of the rest of the code and could not be made so easily. (Not to mentions EVEN MORE nitpicking would happen should that be done as to whether or not that'd be enough... I will simply say it is the minimum I can see required) So what you have is a case not much different in its affect on the program when released in binary form. If you are willing to accept that a static binary would be illegal to distribute, then I believe a reasonable interpretation of my argument based on the GPL's sections 1 through 3 would lend absolute support to the conclusion that a dynamic linked binary is effectively than a static one in such a case. I also argue that the GPL does directly provide a solution to this sort of license conflict in section 10: Contact the Copyright holder(s) of the GPL'd work and arrange to use the code under another license. That is in this case, GPL+Qt exception clause, or some other arrangement all together. KDE has not been doing this, but told me several months ago that they would be doing it soon. -- Joseph Carter <knghtbrd@debian.org> Debian Linux developer http://tank.debian.net GnuPG key pub 1024D/DCF9DAB3 sub 2048g/3F9C2A43 http://www.debian.org 20F6 2261 F185 7A3E 79FC 44F9 8FF7 D7A3 DCF9 DAB3 "Nominal fee". What an ugly sentence. It's one of those things that implies that if you have to ask, you can't afford it. -- Linus Torvalds
Attachment:
pgp_5BXtVZZiE.pgp
Description: PGP signature