tags:

views:

36

answers:

1

A program invokes a (seperate) GPL licensed program as part of some computation, and then uses it's output. (For example: It generates some C code, invokes gcc on it, then uses the assmebly).

Is it considered a derivative work? Does it affect the program's licensing in any way?

+1  A: 

Last i heard, the rule was that as long as the two are separate programs, not sharing memory or anything like that, and they can exist separately from each other (ie: your program will still work, albeit with less functionality, if the other program isn't there), then you don't have to GPL it.

If you link to the other program, either statically or dynamically, you should probably use the GPL. If you're just using the output of the other program, though (and especially if it's a program like gcc, whose output couldn't differ too much if it wanted to serve its purpose), you're fine.

cHao
Thanks cHao. Not really sure about the "can exist seperately from each other" part. The GPLed program obviously doesn't depend on mine, but the other program depends on the functionality of the GPLed program to carry it's work (or at leat, on the existance of a program with a compatible "interface"). It's also helpful if you could share any references.
uj2
THis agrees with my understanding of the GPLv2, but v3 was written in part to narrow the range of ways in which GPL'ed stuff could be leveraged by closed code, so you should look at that version in particular is appropriate.
dmckee