Does this mean that I have to free the source for my web application?
Not *
or just need to free the source for the plug-in?
If you are distributing the application, then yes, you must also distribute the source code for the LGPL part.
You also need to make sure that anyone who receives your application will have the opportunity to change it. This is important for compiled applications - you will need to include the necessary object files so that your application can be re-linked to the modified version of the LGPL code. Or use dynamic linking. The idea is that people should be able to modify the part of your code, which is LGPL, and re-combine it with your application.
Here are some of the LGPL requirements in my words (I'm not a lawyer):
- There should be some clear separation between the LGPL code and the other code. In particular, the recipient should be able to modify the LGPL code or even completely replace it with another code, such as a modified version or a later version of the library. Therefore, if it is a compiled program, then the LGPL code must be either dynamically linked (for example, a separate DLL or a common file) so that it can be easily replaced for a similar library and still be compatible; or, if it is statically linked, the minimum required source files and / or object files must be provided in order to allow recompilation with an alternative library. The non-LGPL part may not contain any part of the LGPL code, except for very simple header files.
- You must clearly indicate how much code the LGPL covers, including its initial copyright notice and the text of the LGPL (including the GPL on which it is based).
- If the integrated software displays copyright notices in the course of work, then a copyright notice should also appear here for the part covered by LGPL, as well as a link to LGPL and GPL.
- In some cases, you may need to provide installation information detailing the use of a modified version of the LGPLd code in a combination application.
These were just some of the limitations, but LGPL also offers you a number of freedoms that other licenses, such as the GPL, do not have. If you distribute the combined work, which includes another LGPL license code:
- You do not need to release source code for the rest of your application (i.e., a part other than LGPL). The only exception to this, as described above, if all of it is statically linked, you need to provide enough code (and / or object files) to be able to re-link it with an alternative or modified version of the LGPL code. If you dynamically bind and interact with the regular API, you do not need to worry about that.
- You do not need to free the rest of your application under the GPL. You can use any license you have, including more restrictive, patented licenses, provided that you follow the rules when distributing it.
- Unlike the GPL version 3, which prohibits the use of code when implementing copy protection or DRM software, you can use the LGPL version 3 license code in an application that includes copy protection or DRM.
I recently wrote an analysis of the actual text of the LGPL . It is not too long.
* You mentioned that the library you use has a GPL data source. Presumably, this means that you will not actually distribute this GPL data with it, namely the LGPL library that uses it.
thomasrutter
source share