Open source license for test library?

I am writing a combinatorial test library that I plan to release into the public domain.

I would like my library to be free of charge for any open source project that wishes to include it. I am happy for closed-source commercial projects to use my code but would like them to pay a small consideration for the privilege.

So my plan is to dual license - one open-source license available to all and a second commercial license provided to paying customers.

My question concerns the open source license. Normally I would use GPL but it has no bite here since closed-source projects would only use my code in-house for testing and not link their released products to it. Testing can be done behind closed doors and test harnesses containing my library would not be distributed - so closed source code can be tested without violating test library's GPL.

I think I need a license that requires any software tested with my code to be propagated under the same open source license. Does something like this already exist or do I have to roll my own GPL variant?


Creative Commons NonCommercial-ShareAlike should cover it:

http://creativecommons.org/licenses/by-nc-sa/3.0/

Noncommercial — You may not use this work for commercial purposes.

Share Alike — If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.


Check out the LGPL. It is roughly the GPL for libraries. That means that people can use your library without releasing their source code. If they modify your library, they'd still have to release those changes, under the LGPL.

However, I don't understand what's wrong with the GPL. If you dual-license, commercial companies won't be affected by the GPL if they pay you. You decide what the limitations are.

If you'd like to strictly disallow commercial use (which the GPL does not consider) check out a CC-nc variant.


The 3-clause BSD license was devised with this intent. However, this license is not compatible with some popular copyleft licenses, such as GPL v2, because of the advertising cause. The 2-clause BSD license drops the advertising cause and becomes similar to the X/MIT license, those two licenses being the most liberal commercial-friendly open source licenses, but they cover the code that is shipped with the final product, so the usage of third-party code in the development process must be explicitly addressed.

Although license proliferation is not recommended, you can create your own license that precisely states the terms and conditions that you need, and this license can be based on a widely used license.

According to your specified needs, you can also look at the Apache License, which is compatible with GPL v3, but incompatible with GPL v2.

For a more elaborate discussion on this subject, you can read Various Licenses and Comments about Them on the FSF's site or Comparison of free software licenses on Wikipedia.

Disclaimer : I am not a lawyer, and this does not constitute legal advice. This is simply how I understand these matters. It is also advisable that you consult a lawyer regarding this matter.

链接地址: http://www.djcxy.com/p/79700.html

上一篇: 库和DLL的开源许可

下一篇: 测试库的开源许可证?