Hi! I'm new to pythonOCC. So far learning and working with pythonOCC has been 
a really great experience, so I want to say thank you to everyone who has 
contributed to this project!

I have started using pythonOCC and PyQt for writing a free CAD application. 
However after some investigations I now think that an application linking with 
both OCC and PyQt would violate the GPL and the application would be 
undistributable. Thus I also think that pythonOCC itself is not legally 
distributable in its current form as it links with PyQt too.

The Problem
-----------
First off I want to say that I'm not an expert on free software licensing and I 
could be wrong on this. So I'd like to get some feedback by others on whether 
my assumptions are correct. 

I found out about the problem through a Debian bug report[1] which is about a 
similar problem in the FreeCAD application. FreeCAD has been removed from 
Debian testing because of this issue and will not be included in Debian 7 
anymore. According to the bug report the problem about FreeCAD is that it 
links with both a library which is licensed under the GPL and with OCC, which 
is licensed under a GPL-incompatible license.

I think that the same is true about pythonOCC: pythonOCC links with both PyQt 
(GPL) and with OCC (GPL-incompatible). So I think that the distribution of 
pythonOCC is violating the GPL. The GPL would require all software which links 
with PyQt to be relicensed under the terms of the GPL as well. This is 
possible for software licensed under the LGPL (like pythonOCC), but not for 
OCC, which is licensed under the OCTPL.

Further legal information on combining GPL-software with other software can be 
found in the GNU GPL FAQ[2], in the section "Combining work with code released 
under the GNU licenses". The question on GPL-incompatible libraries[3] 
explains that using a GPL-incompatible library with GPL software is not 
allowed unless explicitly permitted by the author of the GPL-licensed 
software.

[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=617613
[2] http://www.gnu.org/licenses/gpl-faq.html
[3] http://www.gnu.org/licenses/gpl-faq.html#GPLIncompatibleLibs

Possible Solutions
------------------
Even though this issue has yet to be confirmed by others I'm already listing 
possible solutions here. These could be considered in order to resolve the 
issue if it is confirmed:
1) Have OCC relicensed under the LGPL: The author of the Debian bug report 
talks about a possibility of having OCC relicensed under the LGPL if there are 
enough people trying to persuade Open CASCADE S.A.S.
2) Get a linking exception in PyQt: PyQt already has 26 linking exceptions for 
many popular free software licenses, so asking its developer to add another 
one for the OCTPL might be successful.
3) Port pythonOCC to PySide: PySide is basically "PyQt under LGPL". Porting 
pythonOCC to PySide should be quite easy.

If action has to be taken in order to achieve license-compatibility I'd be 
happy to help by writing either mails or code.

Regards,
Marko

_______________________________________________
Pythonocc-users mailing list
Pythonocc-users@gna.org
https://mail.gna.org/listinfo/pythonocc-users

Reply via email to