I'm interested in included LZO compression into a currently closed source application. Currently LZO is licensed with GPLv2, but i'm confused as to if I need to also open source my application if I use their libraries. I'm not changing their library in any way.
Yes, if you link with a GPL library, you need to open source all your code.
http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html#GPLInProprietarySystem
This is different to LGPL. You don't need to open source all your code if you link with an LGPL library.
If you include a GPLv2 library into your closed source application (even without modifying it), you are producing a derivative work according to the clause 0 of the GPLv2. Thus application should be licensed under the GPLv2. Please refer to the legal FAQ of GNU for more informations.
Two points.
- Linking against a GPL'ed library will make your program a 'derived work' and you will be required to license it under the GPL. Details here. The LGPL is basically the GPL with a clause that allows linking with closed source applications.
- Algorithms (LZO compression in this case) cannot be copyrighted or licensed under the GPL. Concrete implementations are and so perhaps you can find an implementation of the algorithm in question that you can link with a proprietary application (eg. one licensed under the MIT license).
In fact, Markus F.X.J. Oberhumer licenses this library under the GPL, which by itself does not make it usable in a closed-source product, because he is the sole author and therefore has the power to sell less restrictive licenses to people who are interested. Contact him:
You should be able to find an LGPL version of LZO, or if you can live with slightly slower speed zlib is very freely licensed.
Deflate is suppsoed to have similar decompression speed to LZO and is LGPL