Open Source license GPL, LGPL, BSD, Apache 2.0 Popular explanations

Source: Internet
Author: User

How much do you know about open source? If you are a software developer, to open source software, not just open sources, it is important to choose a license, a license to the software is equivalent to the value of the ordinary people, represents the basic character of the software. A bad license selection can directly lead to a failure of the entire project, XFREE86 is a good example.

The main limitation of various open source licenses is still redistribution (release), so the software developed by the personal/Commercial company contains the GPL code, which you can use whenever you do not publish it.
Here are the differences between several open source licenses:

Gpl
There is no need to explain long GPL translations and longer FAQs. To put it simply, the user of GPL software has the power to obtain the code of the software, as long as the GPL is used, the entire project must be a GPL at the time of release (redistribution), that is, the main process and statically linked libraries (Linux. A and Windows. lib) must be GPL, and dynamic-link libraries (Linux. So,windows. dll) must be more compatible than GPL. GPL-compatible, which is a library that can be used in GPL software, which must be weaker than the GPL (e.g. LGPL,BSD) and not a commercial license. Here is a list of compatible lists of the FSF approved software licenses. Because of this, the GPL is highly contagious, as long as your software uses the GPL code, then open the source code with the GPL, and you cannot have any libraries in your project that are incompatible with the GPL.

Lgpl
The GPL is highly contagious, so if a library is published using the GPL, then all the software used in this library must be released using the GPL, which is a deadly blow to commercial software that doesn't want to open the source code-you don't have to use other libraries, but the most basic libc are anyway. If LIBC is released under the GPL, it is equivalent to all software being released under the GPL. So, LGPL (Lesser GPL) was born. LGPL is defined as the new library must be published in LGPL when a new library is developed based on a library published by LGPL, but it is not restricted if it is a dynamic link only. In this way, commercial software can use the LGPL library freely. As a result, LGPL is also contagious, but restricts its development on the basis of the library, without limiting the use of its program itself-its contagion is much smaller than the GPL.

BSD, Apache 2.0
Relatively GPL/LGPL open source code, Bsd,apache 2.0 is much looser-commercial software can use arbitrary bsd,apache 2.0 released software code, without the need for open source code, just need to mention the source of the code is possible. BSD and Apache 2.0 are mentioned in slightly different ways, depending on the details of the agreement. They're GPL-compatible.

Take a look at the following examples of selecting open source licenses:

Android uses the loose Apache 2.0 release, because Google as a commercial company, and do not want to lose the support of commercial software, it wants to unite all can unite the power to join the development of Android, expand their camp, using Apache 2.0 is understandable. And Google itself, does not lose control of Android, will not worry about another company took the Android code developed a closed-source Android opponents. Because, as long as Android constantly out of the new version, the community constantly follow up, and constantly modify the API, other Android-based development companies have to put their patches back to the trunk, otherwise, Will inevitably cost a lot of manpower and resources in the maintenance of their patches (money this aspect you have to fight Google?) ), not worth the candle. Moreover, after the close of the source, and the whole community as an enemy, as a positioning software platform project, will churn out a large number of application software developers, to small broad, any business company will not do this kind of low-odds stupid.

See why Linux released with the GPL is more successful than the BSD release of FreeBSD. In fact, it is because of the GPL's contagion. When a developer develops a new feature on Linux, it has to be open source in the GPL to contribute back to Linux, so that Linux itself grows and keeps up with developers, creating a good software--many users and contributors-- > Better Software--more users and contributors ... The virtuous circle.

Open Source license GPL, LGPL, BSD, Apache 2.0 Popular explanations

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.