tags:

views:

607

answers:

5

I have read the LGPL license but its so complicated that I couldn't figure out the answer for my questions.

I want to use a LGPL library in my project. No change will be done in the LGPL library. This project is a website application used by registered users. The registered users are not charged to use the website.

So my question is can I use the LGPL library for this scenario?

+2  A: 

You can use it without distributing the source code if you are not distributing the program. Are your users downloading a web client program or is everything serverside?

If it is clientside, then you need to dynamically link the library in order to avoid the need to release source code. However, you are still bound to the agreement to link or host the source code of the library(I'm not sure if you need to do both or just 1).

Unknown
+1 for dynamically link
Alex B
+2  A: 

If you do not distribute your web application but just host it and provide access to it (i.e. people just use their browser) then you can use the LGPL library. Giving someone access is not distribution according to the (L)GPL. You can even use GPL libraries and code this way. You are even allowed to change these libraries. Because it is not distribution you can do whatever you want and you do not need to give away the source code.

The only libraries that you cannot use are those licensed under the AGPL (Affero General Public License). The AGPL is like the GPL but with the explicit requirement that if you provide access to a hosted application, you need to distribute the source as well. That means, visitors of your website need to be able to download the soure code of the website. So, if you use an AGPL library then you need to give your users the possibility to download the entire source code for your web application.

Disclaimer: I'm not a lawyer.

Sander Marechal
+2  A: 

Yes. You can.

Pavels
+2  A: 

Summary of LGPL License:

Proprietary Software linking - Allowed (since the software that links to the library is not considered a derivative work).

Distribution of "the Work" - Allowed with some restrictions: You have to provide source code of the distributed LGPL library with (if any) modifications, changes to the LGPL library should be allowed to third parties and if BC your app/lib should still work with the modified LGPL lib/app.

Redistributing of the code with changes - Only if the derivative is GNU LGPL or GNU GPL.

Compatible with GNU GPL - Yes

So in summary, you should be okay.

aleemb
+6  A: 

Firstly, you can definitely use the library. Whether you want to, is a separate question.

If you do not modify the source code, and do not statically link to the library, or rely on internal data structures of the library, then you do not have to distribute the source code of your application to anyone who gets the binaries from you, but you have to distribute the original source code of the library.

If you do modify the source code, but do not statically link to the library, or rely on internal data structures of the library, then you do not have to distribute the source code of your application to anyone who gets the binaries from you but you have to distribute the modified source code of the library.

If you statically link to the library, or rely on internal data structures of the library, then you have to distribute the source code of your application to anyone who gets the binaries from you, and you have to distribute the original (or modified, if applicable) source code of the library as well.

If you are not distributing the binaries, or you are okay with the above constraints, then you can happily use the library.

HTH.

Stobor
The library is a jar file and my Java code uses the api. What do you mean by statically link to the library?
Bhushan
If it's Java, you probably want to read http://www.gnu.org/licenses/lgpl-java.html However, as most other respondents have pointed out, if it's purely a server-side application, and you don't distribute binaries to anyone else, then you don't have to take any of this into consideration.
Stobor