GPL LGPL – Is a Program Linked Against an LGPL Library in Linux Still Under GPL?

gpllgpl

If I were to write say, an embeded linux video server, how much of the code do I have to offer to someone who requests the source? Do I have to offer the code that directly links against the GPL covered code or do I have to offer all code? For instance, if I use gstreamer, or any other LGPL code, on a linux platform in my program, does all of my code become under GPL simply because somewhere in the chain, the LGPL program had to link agaist GPL code?

I guess this is an extension of the question. Can you write a C library that compiles in linux that does not become subject to GPL?

Best Answer

Ob: IANAL, and for legal advice you should go find one.

That said: to answer the question from the title "Is a program linked against an LGPL library in linux still under GPL?" The answer is no, because it never was.

Merely running a program on Linux does not make it subject to GPL. There are all sorts of closed-source programs that run on Linux.

Similarly linking to an LGPL library does not make you subject to GPL, but generally only to LGPL.

So for your case, if you are only using LGPL code, and furthermore linking dynamically as per LGPL section four removes your obligation to supply source code for the library itself.

The summary from the FSF about why you should not in their opinion use the LGPL for a new work is

The GNU Project has two principal licenses to use for libraries. One is the GNU Lesser GPL; the other is the ordinary GNU GPL. The choice of license makes a big difference: using the Lesser GPL permits use of the library in proprietary programs; using the ordinary GPL for a library makes it available only for free programs.

Which attempts to make it clear, that LGPL libraries are not infectious like the GPL itself.

If therefore on the other hand, you are linking to full GPL libraries from your own code, then the situation is quite different, and yes you are obligated to open your program, as you should have been supplying (or offering to supply) the code all along.