Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Question on importing a GPL'ed Python library in commercial code [closed]

Tags:

We're evaluating a couple of Python libraries for Graph manipulation. We tried 'networkx' (http://networkx.lanl.gov/) and 'igraph' (http://igraph.sourceforge.net/).

While both are excellent modules, igraph is faster due to its nature - it's a Python wrapper over libigraph - a blistering fast graph C library (uses LAPACK etc).

Now, the igraph library is GPL licensed. My question is: Can I import igraph and use it in my commercial Python script?

(This is a general question, not just limited to igraph. Apologies if the answer is obvious - I'm a license-newb!)

Thanks, Raj

EDIT: More specifically, does simply importing a GPL Python module make my commercial code liable to be released to the public?

like image 883
ragebiswas Avatar asked Jun 16 '09 03:06

ragebiswas


People also ask

Can Python libraries be used for commercial use?

Python is developed under an OSI-approved open source license, making it freely usable and distributable, even for commercial use.

What is GPL in Python?

The Python Software Foundation License (PSFL) is a BSD-style, permissive software license which is compatible with the GNU General Public License (GPL). Its primary use is for distribution of the Python project software and its documentation.

Which function is used to load any library in Python?

Use import to load a library module into a program's memory. Then refer to things from the module as module_name.


1 Answers

IANAL, etc etc, but:

The Free Software Foundation has consistently claimed that software linked to a library covered by GPL is a derived work, and thus needs to be covered by GPL itself (indeed, that's the main difference of the LGPL license). I don't know how the situation stands in court precedents in various jurisdiction, &c, but if you don't want to risk having to litigate on the issue [which would no doubt bring costs and bad PR even if it were to ultimately succeed], it may be more prudent to avoid linking to GPL libraries (including dynamic linking) if you don't want to distribute the sources to your code.

like image 147
Alex Martelli Avatar answered Nov 15 '22 19:11

Alex Martelli