Question

Suppose one would like to use in an iOS app only one function from a GPLv3 library that contains a large number of them. One cannot simply link the whole library beacuse otherwise the resulting software, having to be GPLv3, would be incompatible with the App Store. Can one "take inspiration" from the source code of the library to write a function that would perform the same task?

I understand that this is a fine line, but I wonder if there is a rule of thumb.

Was it helpful?

Solution

The simple answer is that in most cases and within reasonable limits yes, it's ok. Some provisos.

Copyright law gives you two basic mechanisms, which depend somewhat on the country.

  1. In many cases the use small pieces of code copied from a large work is permitted as "fair use" or "fair dealing". The limits are not well defined, but the principle is solid.
  2. It is always permitted to examine a copyright work in the process of creating your own. The three step process is (a) study the code (b) extract the principles of operation (c) write all new code based on the same principles.

As I tell people repeatedly, if you make no money out of it and harm no-one then just do your best, acknowledge the work of others and don't worry too much. If you make money out of your product or services and/or if you may cause damage to someone, you must take competent legal advice. That won't protect you, but it will warn you about the risks and possibly help to mitigate them.

Licensed under: CC-BY-SA with attribution
scroll top