LGPL allows you to use and distribute the open source software with your application without releasing the source code for your application.
GPL requires you to release the source code of your application if you choose to use and distribute the GPL licensed open source software with your application. In other words, your application must also be licensed under the GPL.
Other developers can borrow and modify the code and re-distribute it as part of their own project, only if their entire project is also licensed under the GPL.
This prevents the code from being used in proprietary software.
LGPL
Other developers can borrow and modify the code and re-distribute it as part of their own project, provided that the portion used under the LGPL, including any modifications, is re-licensed under the LGPL. Other portions of the project are permitted have other licenses.
This allows the code to be used in otherwise proprietary software.
One thing to note is that the LGPL is a longer and more complicated license than the GPL itself, because it contains the full text of the GPL and then adds additional terms to it.
Many of the additional terms in the LGPL specify the conditions that need to be met in order to be able to distribute your code in a project with another license. For example, not only must the user be given the source code to the section under LGPL, but it must be possible for the user of the finished software to modify, re-compile or replace the portion of the software that is licensed under the LGPL and use this modified code with the same software. If you are publishing otherwise proprietary software containing some LGPL code, one way of satisfying this requirement is to place the LGPL code into a separate dynamically linked library, and to distribute with your software the necessary header files and documentation required to re-compile the LGPL portion in such a way that it can still be linked and used with the software as provided. It is not acceptable to take steps to prevent modification of the LGPL code such as obfuscating the code itself or the API or header files.
Note that the LGPL is compatible with the GPL: you can opt to "upgrade" the code to GPL and incorporate it in a wholly GPL licensed project as set out in my first bullet point if you wish. You can't however go the other way and re-license GPL licensed code as LGPL.
IANAL, but the concepts are fairly straightforward.
First, you and your lawyer must read the GPL and LGPL licenses. Second, you should read the GPL FAQ. As far as I understand, you can think of using GPL/LGPL libraries in this way:
If you link dynamically or statically with a GPL or LGPL library, you have created a derivative work.
If you use a library that is LGPL, and you dynamically link with that library, your software does not have to be released with a compatible license, but you must still comply with the LGPL.
If you use a library that is LGPL, and you statically link with that library, your software must be released with a compatible license.
The GPL/LGPL licenses mean "free" as in "free speech", not "free beer". You can create a derivative work and sell it for large amounts of money, but you must comply with the GPL/LGPL.
如果您链接的库是 Lesser Gnu 公共许可证(又名 LGPL),那么您不需要发布自己的应用程序代码,但如果您修改了 lgpl 代码,则仍然需要发布所有修改。
If you cut and paste or link against GPL'd code into your application, your application must be licensed under GPL and you are then required to release the code.
However, you can still sell your application and afaik, the only oblication is that you release the sourcecode to your customers.
If the library you link against is Lesser Gnu Public License aka LGPL then you dont need to release your own application's code but you are still required to release all modifications if you modified the lgpl'd code.
GPL does not forbid you to sell software. However you must make available the sources to the software.
The question of usage is a little more complicated. GNU/Linux is released under the GPL. Nothing forbids you to write software that runs under Linux regardless of the licence of your software. However, you cannot distribute Linux together with your software. That is often a problem with libraries which need to be part of a program. That is what the LGPL licence is for. You can compile a c program you write with gcc (hence using LGPL licenced runtime routine libraries from gcc) and still release you software without the restrictions of the GPL.
I think that is the general gist of it. However, this it not in any way legal advice. For legal advice you must retain a certified attorney who can give you legal advice fitting your particular circumstances.
The GPL vs. LGPL distinction determines whether you do/do not have to release the source for your application to anyone having a copy of the binary. Either way you can still sell the application.
发布评论
评论(6)
LGPL 允许您在应用程序中使用和分发开源软件,而无需发布应用程序的源代码。
如果您选择在您的应用程序中使用和分发 GPL 许可的开源软件,GPL 要求您发布应用程序的源代码。 换句话说,您的应用程序还必须获得 GPL 许可。
LGPL allows you to use and distribute the open source software with your application without releasing the source code for your application.
GPL requires you to release the source code of your application if you choose to use and distribute the GPL licensed open source software with your application. In other words, your application must also be licensed under the GPL.
GPL
其他开发人员可以借用和修改代码,并将其作为自己项目的一部分重新分发,前提是他们的整个项目也获得 GPL 许可。
这可以防止代码在专有软件中使用。
LGPL
其他开发人员可以借用和修改代码,并将其作为自己项目的一部分重新分发,前提是在 LGPL 下使用的部分(包括任何修改)已在 LGPL 下重新许可。 该项目的其他部分被允许拥有其他许可证。
这允许代码在其他专有软件中使用。
需要注意的一点是,LGPL 是比 GPL 本身更长、更复杂的许可证,因为它包含 GPL 的全文,然后向其中添加了附加条款。
LGPL 中的许多附加条款指定了需要满足的条件,以便能够使用其他许可证在项目中分发代码。 例如,不仅必须向用户提供 LGPL 下部分的源代码,而且成品软件的用户必须能够修改、重新编译或替换 LGPL 下许可的软件部分并将此修改后的代码与相同的软件一起使用。 如果您要发布包含某些 LGPL 代码的其他专有软件,满足此要求的一种方法是将 LGPL 代码放入单独的动态链接库中,并与您的软件一起分发重新编译 LGPL 所需的必要头文件和文档部分的方式使其仍然可以与所提供的软件链接和使用。 采取措施防止修改 LGPL 代码(例如混淆代码本身或 API 或头文件)是不可接受的。
请注意,LGPL 与 GPL 兼容:如果您愿意,您可以选择将代码“升级”到 GPL,并将其合并到完全 GPL 许可的项目中,如我的第一个要点中所述。 然而,您不能走另一条路,将 GPL 许可代码重新许可为 LGPL。
GPL
Other developers can borrow and modify the code and re-distribute it as part of their own project, only if their entire project is also licensed under the GPL.
This prevents the code from being used in proprietary software.
LGPL
Other developers can borrow and modify the code and re-distribute it as part of their own project, provided that the portion used under the LGPL, including any modifications, is re-licensed under the LGPL. Other portions of the project are permitted have other licenses.
This allows the code to be used in otherwise proprietary software.
One thing to note is that the LGPL is a longer and more complicated license than the GPL itself, because it contains the full text of the GPL and then adds additional terms to it.
Many of the additional terms in the LGPL specify the conditions that need to be met in order to be able to distribute your code in a project with another license. For example, not only must the user be given the source code to the section under LGPL, but it must be possible for the user of the finished software to modify, re-compile or replace the portion of the software that is licensed under the LGPL and use this modified code with the same software. If you are publishing otherwise proprietary software containing some LGPL code, one way of satisfying this requirement is to place the LGPL code into a separate dynamically linked library, and to distribute with your software the necessary header files and documentation required to re-compile the LGPL portion in such a way that it can still be linked and used with the software as provided. It is not acceptable to take steps to prevent modification of the LGPL code such as obfuscating the code itself or the API or header files.
Note that the LGPL is compatible with the GPL: you can opt to "upgrade" the code to GPL and incorporate it in a wholly GPL licensed project as set out in my first bullet point if you wish. You can't however go the other way and re-license GPL licensed code as LGPL.
IANAL,但概念相当简单。
首先,您和您的律师必须阅读 GPL 和 LGPL 许可证。 其次,您应该阅读GPL 常见问题解答。 据我了解,您可以这样考虑使用 GPL/LGPL 库:
IANAL, but the concepts are fairly straightforward.
First, you and your lawyer must read the GPL and LGPL licenses. Second, you should read the GPL FAQ. As far as I understand, you can think of using GPL/LGPL libraries in this way:
如果您将 GPL 代码剪切并粘贴或链接到您的应用程序中,则您的应用程序必须根据 GPL 获得许可,然后您需要发布该代码。
但是,您仍然可以出售您的应用程序,据我所知,唯一的义务是向您的客户发布源代码。
如果您链接的库是 Lesser Gnu 公共许可证(又名 LGPL),那么您不需要发布自己的应用程序代码,但如果您修改了 lgpl 代码,则仍然需要发布所有修改。
If you cut and paste or link against GPL'd code into your application, your application must be licensed under GPL and you are then required to release the code.
However, you can still sell your application and afaik, the only oblication is that you release the sourcecode to your customers.
If the library you link against is Lesser Gnu Public License aka LGPL then you dont need to release your own application's code but you are still required to release all modifications if you modified the lgpl'd code.
GPL 并不禁止您销售软件。 但是,您必须提供该软件的源代码。
使用问题有点复杂。 GNU/Linux 在 GPL 下发布。 无论软件的许可证如何,都不会禁止您编写在 Linux 下运行的软件。 但是,您不能将 Linux 与您的软件一起分发。 这通常是需要成为程序一部分的库的问题。 这就是 LGPL 许可证的用途。 您可以编译使用 gcc 编写的 ac 程序(因此使用 gcc 的 LGPL 许可的运行时例程库),并且仍然可以不受 GPL 的限制发布您的软件。
我认为这就是它的总体要点。 然而,这绝不是法律建议。 如需法律建议,您必须聘请经过认证的律师,他可以为您提供适合您具体情况的法律建议。
希望这可以帮助。
GPL does not forbid you to sell software. However you must make available the sources to the software.
The question of usage is a little more complicated. GNU/Linux is released under the GPL. Nothing forbids you to write software that runs under Linux regardless of the licence of your software. However, you cannot distribute Linux together with your software. That is often a problem with libraries which need to be part of a program. That is what the LGPL licence is for. You can compile a c program you write with gcc (hence using LGPL licenced runtime routine libraries from gcc) and still release you software without the restrictions of the GPL.
I think that is the general gist of it. However, this it not in any way legal advice. For legal advice you must retain a certified attorney who can give you legal advice fitting your particular circumstances.
Hope this helps.
GPL 与 LGPL 的区别决定了您是否必须将应用程序的源代码发布给拥有二进制文件副本的任何人。 无论哪种方式,您仍然可以出售该应用程序。
The GPL vs. LGPL distinction determines whether you do/do not have to release the source for your application to anyone having a copy of the binary. Either way you can still sell the application.