7 ms·
So you're saying that I can license my code under anything as long as I still follow the rules of the GPL... http://www.fsf.org/licensing/licenses/gpl-faq.html
by davisp 17y ago
So you're saying that I can license my code under anything as long as I still follow the rules of the GPL...
http://www.fsf.org/licensing/licenses/gpl-faq.html#IfLibraryIsGPL http://www.fsf.org/licensing/licenses/gpl-faq.html#IfLibrary...
Does mention "or compatible license".
And I'm really confused about dynamic languages that aren't explicitly compiled before distribution.
- jmillikin 17y agoYou can distribute your code under any license, no matter what, as long as it's not derived from GPL'd code (eg, you didn't copy-paste it and change a few strings). The FAQ entry deals with derived works (eg, compiled binaries). If your code's license is not GPL-compatible, then any work derived from both your code and GPL'd code cannot be legally distributed -- for example, it is illegal to distribute a binary which is statically linked against BSD-4 and GPL code. The ability to distribute binaries is why GPL compatibility is so important. This applies to dynamic languages as well. Python or Ruby code can be distributed under any license the author wishes, but works created from a combination of that code and GPL'd code must be covered by the GPL. For example, say Alice creates a Python library libalice and publishes it under the GPL. Bob writes an application BobApp which uses that library, and publishes it under the X11 license. Charlie uses py2exe to create an easily distributable version of BobApp, which includes a private copy of libalice. The licenses are: libalice: GPL BobApp: X11 Charlie's BobApp.exe: (GPL + X11 + Python license) -> GPL If you'd like, you can think of licenses mathematically: license(foo + bar) = license(foo) + license(bar). If the licenses are compatible, then the strictest license is used for the derived work. If the licenses are not compatible, the derived work cannot be distributed. US copyright law, fundamentally, is not complicated. The hard part is figuring out what "derived work" means, which depends on local laws and customs, and which you need to be a lawyer to figure out. Luckily, most cases involving software are very clear-cut, so even lay-people can get by with just a copy of the relevant regulation.