I'm using an Apache 2.0 licensed library in my closed source software. Let's say I include the Apache 2.0 text file as a "const string" variable in my C code and make sure it makes it to the binary. Then I only distribute the binary. Would that be enough to comply with Apache 2.0??

I'm asking this because my closed source software is actually the firmware for my embedded device which doesn't have a display. I also don't distribute any documentation or manual with the product to use for printing the license text.

1 Answer 1


Apache v2 s4 says that

You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:

(a) You must give any other recipients of the Work or Derivative Works a copy of this License

IANAL/IANYL, but giving them that licence locked up inside the firmware of a device with no written output capability is a pretty nugatory way of honouring it. If you take that route you had better pray that you don't accidentally make any other compliance slips, because your decision about the licence copy could be presented as evidence that you've decided to sail close to the wind in terms of compliance, ie, evidence of bad faith.

You say you're supplying no documentation; OK. You don't say where you're selling this device, but if you hope to sell it into the EU or US markets, and in my experience many others also, you will have to include a one-or-more-page set of regulatory statements (FCC compliance, that sort of thing). Adding the Apache licence on to that won't kill you, and it casts your licence compliance behaviour in a much better light.

Edit: you say the author of the software has approved your putting the licence in the online-available documentation, which is linked from a one-page sheet distributed with the product. If (s)he's the sole rights-holder, that is, if (s)he wrote the code in its entirety, then (s)he can permit you to use it under any terms (s)he wants, including "Apache with a reduced documentation requirement", which is apparently what (s)he's doing.

If (s)he based her code on someone else's Apache-licensed code, then (s)he can't free you from the obligations you owe to that earlier author, and my answer abve applies.

  • Our FCC notices are all in the manual. But we're not distributing the manual physically with the device, It's accessible online. The only thing distributed with the device is one piece of paper(install sheet) that at the top says here's where manuals are.
    – Moe
    Commented Feb 7, 2019 at 17:57
  • Also if I contact the open source software developer and he tells me putting it our manuals that are online and not distributed with the device is OK, is that enough? or is this a kind of permission that only Apache can give?
    – Moe
    Commented Feb 7, 2019 at 18:30
  • @Mohammad see my edit above.
    – MadHatter
    Commented Feb 7, 2019 at 20:20
  • Just wanted to give you an update that my workplace decided not to contact the guy since they said they might ask for money. We just decided to print a new piece of paper and put in the box that says there's an open source license in the online manual
    – Moe
    Commented Feb 21, 2019 at 22:12

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.