Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am asking in the context of the licenses on code that one sees all over the place. Typically, they say something along the lines of "if you release a product containing this in binary form, it must contain X, Y, and Z."

Does that mean that if I use the code in an app, the app has to have a screen somewhere that contains X, Y, and Z in human-readable form?

share|improve this question

migrated from stackoverflow.com Jul 18 '11 at 14:34

This question came from our site for professional and enthusiast programmers.

add comment

4 Answers 4

up vote 6 down vote accepted

The text is indicating that you must include X, Y, and Z if you distribute the compiled form of the code (as opposed to the source code). Assuming that X, Y, and Z are, for example, copyright notices, they would generally need to be included in documentation and other human-readable materials distributed along with the binaries.

share|improve this answer
add comment

It's referring to if you use the library in its compiled form. Binary is what gets run by the actual processor; i.e. code gets compiled to machine code for your processor at one point or another.

share|improve this answer
    
OK, but then do X, Y, and Z need to go into my SOURCE, or do they need to be readable by any USER or the project? –  William Jockusch Jul 17 '11 at 19:29
add comment

Binary form refers to compiled executable code which is understandable by the computer, as opposed to source code (such as C++, C, Python etc) which is human-readable. In this case, it is imposing restrictions or obligations that apply when you distribute the code as part of a compiled application that may not apply (or by different from) licence terms that apply to the source code only.

This derives from a more general use of the word "binary" to refer to any data format which is not readable by humans, including compiled applications, images, videos or audio files. It is a bit of misnomer because all data is technically stored using the binary system, however the usage is widespread and well-understood.

share|improve this answer
add comment

What exactly is “Binary Form”?

  • In laymans' term, "Binary Form" is encoded form that is only understood by machine (or any other special program made to read it - eg: docx file).
  • For more details there's wikipedia.

Does that mean that if I use the code in an app, the app has to have a screen somewhere that contains X, Y, and Z in human-readable form?

  • Yes, i.e. you should follow what the line says: "if you release a product containing this in binary form, it must contain X, Y, and Z."
share|improve this answer
    
docx is a zip :p –  EaterOfCode Jun 3 at 14:09
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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