[Numpy-discussion] Solaris Sparc build broken

Robert Kern robert.kern at gmail.com
Thu Nov 19 12:46:44 EST 2009


On Thu, Nov 19, 2009 at 01:43, David Cournapeau
<david at ar.media.kyoto-u.ac.jp> wrote:
> Robert Kern wrote:
>
>>  One can have a proprietary application statically linked
>> with an LGPL library. The only detail there is that, in order to
>> satisfy the "user must be able to relink the application with a
>> modified Library" requirement, the distributor must provide object
>> files for his proprietary code and the appropriate tools such the user
>> can relink against a modified library.
>
> So the "static exception" which is often added to the LGPL is just to
> avoid having to distribute the object files ?

Yes. It *is* a hassle, and I've never actually seen it done in the
wild. Everyone either dynamically links (making replacing the LGPLed
Library trivial) or uses a library with one of these exceptions.

> Also, what does
> distributing the object files/sources for the proprietary part mean for
> python ? Is the bytecode enough ?

Ignore "object files". That's an example of satisfying the LGPL
requirement using a popular technology, not the requirement itself.
The requirement is that a user of the Combined Work must be able to
replace the LGPLed Library with a modified version and combine it with
the proprietary Application.

For many Python deployments, satisfying this requirement is trivial,
just like the dynamic linking case in other languages. The user can
just drop in the new modules in the right places. The developer
doesn't need to do anything special.

For frozen/py2exe applications, where the Python modules are zipped up
into the executable itself, you need to provide a way to rebuild the
frozen executable with the modified Library. There are a couple of
ways to do that, depending on the tool that is used.

-- 
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 NumPy-Discussion mailing list