License compatibility
From Wikipedia, the free encyclopedia
Licenses of software packages can contain contradictory requirements, rendering it impossible to combine source code from such packages in order to create new software packages.[1]
For example, if one license says "modified versions must mention the developers in any advertising materials", and another license says "modified versions cannot contain additional attribution requirements", then, if someone combined a software package which uses one license with a software package which uses the other, it would be impossible to distribute the combination because the two requirements cannot be simultaneously fulfilled. Thus, these two packages would be license-incompatible.[2]
Not all licenses approved by OSI or by the Free Software Foundation are compatible with each other, thus not all the code under OSI or FSF approved licenses can be mixed. For example code under Mozilla Public License can't be mixed with code under GNU General Public License (both licenses are OSI and FSF approved). The "FLOSS License Slide" shows if some common licenses are compatible [3].
[edit] GPL compatibility
Many of the most common free software licenses, such as the original MIT/X license, the BSD license (in its current 3-clause form), and the LGPL, are "GPL-compatible". That is, their code can be combined with a program under the GPL without conflict (the new combination would have the GPL applied to the whole). However, some free/open source software licenses are not GPL-compatible. Many have strongly advocated that free/open source software developers use only GPL-compatible licenses, because doing otherwise makes it difficult to reuse software in larger wholes[4].
Also see the list of FSF approved software licenses for examples of compatible and incompatible licenses.