Subject: LGPL... variations on a theme
From: Bernard Lang <>
Date: Thu, 5 Jul 2001 06:11:28 +0200

Some questions raised by people, regarding licences and business uses
of free software.

  A company wants to free a large piece of technical software.  It is
expected that other users may not want to use the whole system, but
only parts, but may also want to be able to link to code from other
sources, often commercial and proprietary (it is very application
   A natural suggestion is to use LGPL, which is very convenient
because it can accomodate a large variety of situations without too
much fuss (and it does help promoting free software in companies that
would otherwise be scared).

   This flexibility of the LGPL also means that, unlike the GPL that
must be respected to the letter at the risk of legal incompatibility,
the LGPL may be modified more freely (do not tell RMS I said that).

  Here are 2 modifications which came to my mind, from discussions with
industry people who had problems ...  which I am trying to help solve.

1- The company above, that wishes to free a large (and very valuable)
system, does not want to spend any ressources on that, and in
particular in cutting the code into modules to allow the use of the
   My idea is to use a LGPL like licence ELGPL (Extraction LGPL),
allowing anyone to extract a fragment of code and turn it into an
independant module, provided that this module is used according to the
terms of the LGPL and redistributed under the LGPL or the ELGPL, and
is fully documented with respect to usage and interface.
   So the work of extracting and documenting meaningful independent
parts from the system can be delegated to the user community to be

   Do I miss an important issue ?

2- Another organization is producing a free compiler, and an associated
run-time library. The run-time library is LGPLed.
   They are concerned that potential users will not like the
constraint of the LGPL on "work that uses the Library" as described in
section 6 of the LGPL, namely that one must provide a relinkable
version of the program (so as to allow free modification of the
library components used).
   The problem is not so much that people do not want to give that
freedom, but that the hassle of being contrained to do it for ever may
discourage potential users at the onset of their project.
   So the idea is to remove that constraint (possibly while
encouraging people to do it anyway).
   The idea is that a free system that is a bit more lax on GPLing is
better than a dead system (they want, need their system to live).
   I am not too keen on this, but I would welcome comments.

BTW, do the millions of developers using GCC and LIBC actually follow
the rule ?

With my apologies for not giving names ... I had to sign a NDA.



         Non aux Brevets Logiciels  -  No to Software Patents
           SIGNEZ    SIGN             ,_  /\o    \o/    Tel  +33 1 3963 5644  ^^^^^^^^^^^^^^^^^  Fax  +33 1 3963 5469
            INRIA / B.P. 105 / 78153 Le Chesnay CEDEX / France
         Je n'exprime que mon opinion - I express only my opinion