gnu readline licensing?

Robert Kern robert.kern at
Tue Apr 20 17:11:17 EDT 2010

On 4/20/10 3:49 PM, Brendan Miller wrote:
> On Tue, Apr 20, 2010 at 11:38 AM, Robert Kern<robert.kern at>  wrote:
>> On 4/20/10 1:09 PM, Brendan Miller wrote:
>>> Python provides a GNU readline interface... since readline is a GPLv3
>>> library, doesn't that make python subject to the GPL? I'm confused
>>> because I thought python had a more BSD style license.
>> The PSF License is more BSD-styled, yes. The readline module can also be
>> built against the API-compatible, BSD-licensed libedit library. Python's
>> source distribution (even the readline module source) does not have to be
>> subject to the GPL, though it should be (and is) GPL-compatible.
>>> Also, I presume programs written with the readline interface would
>>> still be subject to GPL... might want to put a warning about that in
>>> the python library docs.
>> *When* someone builds a binary of the Python readline module against the GNU
>> readline library, then that binary module is subject to the terms of the
>> GPL. Any programs that distribute with and use that binary are also subject
>> to the terms of the GPL (though it can have a non-GPL, GPL-compatible
>> license like the PSF License). This only applies when they are combined with
>> the GNU readline library, not before. The program must have a GPL-compatible
>> license in order to be distributed that way. It can also be distributed
>> independently of GNU readline under any license.
> Hmm... So if I ship python to a customer with proprietary software
> that runs on top of it, then I need to be careful to disable
> libreadline? Is there a configure flag for this or something?

Just don't ship the module. That's the only thing that links to 

> Since libreadline is the default for Linux systems, and Python's
> license advertises itself as not being copyleft, and being embeddable
> and shippable... It would be nice if this were made clear. Maybe a
> note here about libreadline:

> It seems to me that the whole of the python distribution would be GPL
> after being built with libreadline, so this would be an easy trap to
> fall into if you didn't realize that python used libreadline.

No, the whole Python distribution does not magically become GPLed because one 
optional module that you may or may not load is compiled against a GPLed library.

Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
  that is made terrible by our own mad attempt to interpret it as though it had
  an underlying truth."
   -- Umberto Eco

More information about the Python-list mailing list