ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

IANAL, but from my understanding it's not that simple and seems to be pretty open for interpretation (which is why I try to stay away from GPL code as much as possible).

The official FAQ is incredibly vague: http://www.gnu.org/licenses/gpl-faq.html#GPLInProprietarySystem

The two programs have to remain well separated for one to use a GPL license and one to use a proprietary one. From my understanding this is why connecting to a GPL web server from a proprietary browser is ok (they are distinctly separate programs and the communications between them is common and generic). I don't think however you can write a wrapper for a GPL library that just translates the function calls into TCP messages and communicate with it from a proprietary program. They've essentially become one system at that point even though they don't actually link against one another. I'm not sure where ROS falls on that spectrum.

There was another good discussion on the topic here: http://answers.ros.org/question/12313/using-gpl-licensed-packages-in-a-commercial-product/ and a good, but equally vague/consult your lawyer for a final answer explanation here: http://www.sitepoint.com/public-license-explained/