views:

35

answers:

2

Using Python's subprocess module, my code invokes a GPL-licensed program. My code starts the process, sends some data to stdin and reads stdout.

What does the GPL say about this use case? Am I in violation of the license?

+4  A: 

Use of he program does not constitute derived work in itself. However, if you are distributing the GPL protected program along with your script, you will need to bundle the source code or make it available to your end users in respect with the redistribution clauses of the license.

André Caron
Thanks, good point abt. the redistribution.
codeape
+2  A: 

That's not a violation. If you were to compile in the code for said program such that it became part of your program, it would be, but calling it as a separate process is not. What you're asking is identical to the case of shelling out to a GPL command line app from a commercial app -- all of which is non-violating.

cyphers
That's what I thought. A bit of a loophole in the license. It means that for any GPL-library I want to use in a closed-source app, I could create a minimal cmd-line program that controls the library and release that as open source.
codeape
@codeape: I think you're misinterpreting the intent to see that loophole: in that situation, the GPL'd program is still open and free, and may be freely modified.
Roger Pate