开发者

If I have a tool that uses open source software does that mean the entire tool is open source? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.

This question does not appear to be about programming within the scope defined in the help center.

Closed 7 years ago.

开发者_高级运维 Improve this question

I have a software project that I would like to sell, it uses open source software (not a direct derivative of the open source software, but uses it for certain functionality). Does this require that the entire project now be open source?

edit: The license of the open source software I use is LGPL

edit2: The software I'm releasing will give users full access to the source-code, I just want to make sure that the rights of redistribution are held solely by my company.


It depends on the OpenSource license the tool uses. Some are more permissive than others. GPL, for example, is quite restrictive, and I believe would require that any work that derives or uses GPL'ed source to itself be GPL. LGPL, on the other hand, is more permissive, but still places some restrictions:

While I am not an expert, the following link provides information about what each of the most popular licenses allow you to do with code that uses or derives from open source under that license.

For LGPL (according to the above link) software that IS NOT a derivative work is not subject to be requiring its code to be released. Release of the work you depend on is:

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.


Not usually. This question may help: When is your code a "Derivative work"?


I see 3 major cases (and probably many more grey zones):

  1. You use the LGPLed software as-is (unmodified source code) : you don't have to distribute the source code of your application under the LGPL. You can distribute your software under your own terms. (Ex: your product use a 3rd party LGPL library).
  2. You modified the LGPLed software (but your product is not based on it): As long as you make available your modifications to the LGPL software under the LGPL license, you can distribute your software under your own terms.
  3. Derivative work (ie: your software is built on top of the Open Source LGPL software) : You must publish your work under the same license as the original LGPLed software. Ex: I modify the Qt 4.6 source code (which is LGPL) to support Android. In that case, I can't publish the resulting product as a proprietary product or under another license. It must be distributed as LGPL also.


If you're using LGPL, then the answer is typically no. There is some question about whether this is the case for things like C++ templates, though, so you may want to ask a lawyer.


If it's a derivative work from software licensed under the LGPL, the derivative work does not need to be open-sourced.

It's why the "L" in "LGPL" stands for "Lesser" - it is, on the whole, less restrictive.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜