views:

229

answers:

3

Lets say that I am writing a program that supports plugins and I write one plugin that has a reference to a assembly(.net) that is licensed under LGPL, must I now make the whole project open source and under LGPL?

+4  A: 

The main difference between the LGPL and the GPL is that the LGPL does not impose any licensing requirements between modules that can be interchanged by the end user.

So as long as the end user can substitute a different but compatible version of the third party assembly, and as long as you obey the other requirements of the LGPL (like giving appropriate attribution if you're distributing that third party assembly) you can license your stuff however you like.

RichieHindle
The word "viral" is mainly used by critics of the GNU GPL. It is not a neutral description of how the GNU GPL works. Please avoid it.
@lutz: Point taken, and edited accordingly.
RichieHindle
Knowledge is best spread by it being used. SQLite is a good example of how sometimes knowledge is best spread by including it in a commercial application (iPhone). That would not have been possible through GPL because it is "Viral".
JustSmith
That may be the case. But since the OP wants to use a LGPG licensed assembly, the undoubted merits of public domain software like SQLite are not on topic.
+2  A: 

That depends on the nature of the reference. If "having a reference" is similar to "linking a library", you are not forced to license your software under the LGPL. That is where the LGPL and the GPL differ.

+1  A: 

Consulting a lawyer is the only way to get complete, accurate advice of this nature.

That being said, you should be fine, provided you leave the LGPL code in the indepdendant, .NET assembly. If you use the code directly within your project, you may run into other issues, but as long as the .NET assembly is left as-is, and just used by your project, you shouldn't have to open up your code (although you do need to follow the other restrictions of LGPL - mainly distributing the appropriate license files, providing access to the code for the assembly, and using proper attribution).

Reed Copsey