1

This question already has an answer here:

Currently we're starting to work on a project for which we're going to need image processing libraries. The problem is some of the libraries are GPL licensed.

I'm reading through GPL licence and quite a lot of other ones (FreeImage public licence etc..) and I'm a bit confused of all the long text. So I'll ask bluntly:

Is it possible to use a GPL licenced library in our commercial product (not modifying the code, just building the library and using it in our product (as a DLL)) without releasing the source code of our product?

marked as duplicate by gnat, user40980, Michael Kohne, whatsisname, user53019 Jun 25 '14 at 21:41

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 1
  • 2
    I've removed the bit about other license types as there are dozens of various open source licenses. Stack exchange Q&A works best when there is only one right answer for the question. Having a question that allows for one person to answer about Apache, and another GPL, and another MSPL makes for scattering of information and reduces the usefulness of the question and answer. – user40980 Jun 25 '14 at 16:39
  • You probably should make your software GPL too, but you need to ask your lawyer – Basile Starynkevitch Jun 25 '14 at 18:41
2

Don't distribute

The GPL is primarily about distribution of your software (what they call "conveyance"). If you only use your app and the GPL library in-house, the GPL does not consider this conveyance, and the copyleft provision is not triggered. You therefore don't need to make your program open-source.

Communicate at arms length

If your program does not depend on the GPL library or application for its proper functioning, and you communicate at arms length with it through spawning a separate process, pipes or something similar rather than linking the library in your application directly, then the GPL considers your program a separate application (instead of a derived work), and you don't need to make your program open-source.

  • 1
    2nd point is not strictly true. Communicating with a GPL program may legally be considered as "linking" to it... (it really depends if the protocol is used by several applications or not) – Basile Starynkevitch Jun 25 '14 at 18:40
  • The primary idea is that your program does not depend on the library (that bit about "derived works"). But I do agree it's a gray area (the FSF says as much). Not really sure what several other applications have to do with anything. – Robert Harvey Jun 25 '14 at 18:43
  • ok, can't use GPL then. We're making a program that controls a robot taking pictures of an object, the program then processes them (contrast, balance, masking, etc...) on the fly and makes several types of presentations/collections of them.... – mishan Jun 26 '14 at 7:36

Not the answer you're looking for? Browse other questions tagged or ask your own question.