LWN.net Logo

Can't use with GPLv2 under LGPLv3?

Can't use with GPLv2 under LGPLv3?

Posted Jul 9, 2007 21:37 UTC (Mon) by sepreece (subscriber, #19270)
Parent article: Samba Adopts GPLv3 for Future Releases

"If your code is released under a "GPLv2 only" license, it is not compatible with the Samba libraries released under the GPLv3 or LGPLv3 as the wording of the "GPLv2 only" license prevents mixing with other licenses."

Umm - doesn't the GPLv2's system-library exception allow such use, if the LGPLv3 library is provided by the OS?


(Log in to post comments)

Can't use with GPLv2 under LGPLv3?

Posted Jul 9, 2007 22:22 UTC (Mon) by Los__D (subscriber, #15263) [Link]

Do you mean this part? However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

I really can't see how that is related. That just exempts you from having to distribute the source of the components, it doesn't free you from it's terms. You would still not be allowed to link to LGPLv3 libs from a GPLv2 program.

Can't use with GPLv2 under LGPLv3?

Posted Jul 9, 2007 22:41 UTC (Mon) by sepreece (subscriber, #19270) [Link]

Can you explain why you wouldn't be allowed to? The quoted exception allows you to link with libraries provided by the platform, regardless of their license and the LGPLv3 allows linking with material under any license (under certain conditions), so where's the blockage?

Read the last sentence of that paragraph

Posted Jul 10, 2007 0:07 UTC (Tue) by JoeBuck (subscriber, #2330) [Link]

The GPLv2 text says:

However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable (emphasis mine).

That means that a distro cannot include both the GPLv2-only app and the LGPLv3-or-later library, packaged so that the former uses the latter: you can't ship them together. The exception was for GPLv2 programs using proprietary C libraries, so it's written narrowly; it's caused problems for "GNU/Solaris" distributions. As it turns out, GPLv3 is more permissive in this regard.

Can't use with GPLv2 under LGPLv3?

Posted Jul 10, 2007 13:45 UTC (Tue) by jamesh (subscriber, #1159) [Link]

The system library exception essentially says that it is okay to distribute binaries of a GPL'd programs even if they link against system libraries that would not themselves be distributable under the GPL.

However, this would not really help you if the system library had a license that did not give permission to link against GPL'd programs.

So this would be a problem if you had a GPLv2-only application linking against the GPLv3 libsmbclient, as the application code is incompatible with libsmbclient's license.

Can't use with GPLv2 under LGPLv3?

Posted Jul 9, 2007 23:34 UTC (Mon) by tbrownaw (guest, #45457) [Link]

Perhaps they don't think that Samba is (part of) a "major component" of the OS (which OS?)?

Can't use with GPLv2 under LGPLv3?

Posted Jul 10, 2007 5:18 UTC (Tue) by khim (subscriber, #9252) [Link]

You are talking about this, right: "As a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable" ?

You can not distribute GPLv2 program and LGPLv3 library on the same CD (exception only works if they are distributed separately - read the "special exception" carefully)...

Can't use with GPLv2 under LGPLv3?

Posted Jul 10, 2007 13:37 UTC (Tue) by sepreece (subscriber, #19270) [Link]

Actually, the exception is for things that are normally distributed *with* a major component and the "unless" is about the component itself. Examples would be a library that normally accompanies a compiler versus the compiler itself. So, you presumably could distribute a GPLv2 program with a GPLv3 version of a library that normally accompanies the compiler, so long as you didn't also include the compiler itself.

Also, the "mere aggregation" clause provides another exception, so long as the library is not "a work based on the program" and is not combined (linked) into the program to form a work based on the program.

[Also, I suppose the copyright holder for a program could ship a GPLv2 program with a GPLv3 library, because such conveying does not rely on the terms of the license. However, a downstream recipient would not have the same freedom, making the use of a free license somewhat meaningless...]

Can't use with GPLv2 under LGPLv3?

Posted Jul 10, 2007 8:21 UTC (Tue) by Jel (subscriber, #22988) [Link]

Didn't RMS say that GPLv3 is merely a clarification of GPLv2, and the same
meaning was intended all along? So, they should be compatible. Does the
license literally prohibit use with ANY other license, including other
versions of the GPL?

I mean, don't get me wrong: I think it's GOOD that GPLv2-licensed projects
will need to move with the license, but the incompatibility seems (a
little) strange.

Can't use with GPLv2 under LGPLv3?

Posted Jul 10, 2007 8:57 UTC (Tue) by Los__D (subscriber, #15263) [Link]

The same meaning is intended ("Don't take away people's rights to this software"), but since there has been found more ways to do so, more restrictions has been added, so they can't be compatible, unless you kept the "or later" part to GPLv2.

Can't use with GPLv2 under LGPLv3?

Posted Jul 10, 2007 15:57 UTC (Tue) by JoeBuck (subscriber, #2330) [Link]

RMS and the FSF have long recommended that people license their software "GPLv2 or later". Those who did this have no problem. But people who said "GPLv2 only" explicitly rejected GPLv3. This means that they cannot link their code to GPLv3 or LGPLv3 code, unless they drop their rejection first by changing the license.

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.