I want to write a plugin for an open-source software which is not GPL, but has a GPL-compatible license (MIT/BSD). I would like the plugin to use a GPL library.

Can I do this?

My rationale:

  1. Since the plugin links with a GPL library, the plugin is of course also GPL, which is fine.
  2. In order to comply with GPL, all the components used to produce my plugin binaries need to be open-source with a GPL-compatible license.
  3. In order to build my plugin I also need to link with the host interface library (i.e. my plugin depends on this library).
  4. Because (and only because) this host interface library is also open-source under a GPL-compatible license (MIT), then I'm fine and my plugin can safely be distributed also under the GPL.

Is this reasoning correct?

  • 2
    Is the plugin going to distributed separately from the main software? If so it doesn't really matter how either of them are licensed. Commented Nov 14, 2015 at 2:27
  • 1
    Yes, the plugin is going to be distributed separately. That was my original intuition, but I wanted to double check because of a plugin's dependency to the host API. In this case I think it's safe because the host API is MIT-licensed.
    – glopes
    Commented Nov 14, 2015 at 9:05
  • You use the library through its API, and if that is GPL the result must be GPL. Perhaps just the plugin. But this is murky at best, as far as I know, there are no binding court decisions or laws on the matter.
    – vonbrand
    Commented Nov 15, 2015 at 13:29
  • 1
    Yes, the plugin itself most definitely needs to be GPL. I was mostly concerned whether there was something about the host dependency that created problems. In this case, since the host is MIT, I'm becoming more and more convinced that it is absolutely fine.
    – glopes
    Commented Nov 15, 2015 at 14:39

1 Answer 1


As the license is GPL-compatible there should be no problems (if the license has no share-alike condition).

If you are still unsure you could simply contact the creator of the software you want to make your plugin for.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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