GPL/LGPL and the Linux kernel

Pete Buechler peterb@suse.com
Thu, 4 Jan 2001 11:50:23 -0700


On Wednesday 03 January 2001 08:07 pm, you wrote:
> On Jan 03 2001, at 14:33, Stephen P. Smith was caught saying:
> > We were talking liscening issues here today and I was asked a
> > question.
> >
> > If the linux kernel is under the GPL, it can be linked against
> > glibc without a problem.
> >
> > Now let's say that I write a non-GPL compatible program and want to
> > run it on Linux.  If it links against the kernel then I am in
> > volation of the GPL'ed kernel liscense - correct.  If so, how do I
> > run my program on linux?
>
> wrong
>
> The kernel and system libraries (glibc, libm, etc) are LGPL.  You can
> dynamically link to them with a binary only application.  You cannot;
> however, build a static linked version of you application and
> distribute it as binary only.

Hold it a second here. There are lots of problems above. First of all, 
the kernel is GPL, the system libraries are LGPL. You can link 
proprietary code to LGPL without a problem, either static or dynamic - 
that's what the LGPL was created for in the first place. The kernel is 
GPL, and whether one can dynamically link to GPL code or not is an 
issue for debate. However, Linus has specifically said that he will 
allow dynamically loaded kernel modules to be released in a binary only 
format. 

The kernel DOES NOT link to glibc. It is compiled with no C library 
functions. If you write an application that runs on Linux the only 
Linux code that you could be accused of using are the system header 
files - you do not link against the kernel. Therefore you can run 
proprietary code on Linux. 

-- 
Pete Buechler
Developer, SuSE Labs
peterb@suse.com
http://www.suse.com/~peterb