[FFmpeg-devel] [PATCH 1/2] avcodec/nvenc: Include NVENC SDK header

Andreas Cadhalpun andreas.cadhalpun at googlemail.com
Thu Dec 10 20:28:10 CET 2015

On 10.12.2015 19:03, Nicolas George wrote:
> Le decadi 20 frimaire, an CCXXIV, Andreas Cadhalpun a écrit :
>> I'm not sure it's that easy. If that were correct, it would become
>> GPL-compatible to distribute a GPL-licensed program linked with a
>> proprietary library by simply inserting a MIT licensed header in the middle.
> But yes, it is that easy. Well, if you want to use -lfoo instead of
> dlopen(), you need libfoo.so too, not just foo.h.

Using the header, one could create a dummy libfoo.so containing only
stub functions.

> But the gist of it is that with dynamic linking, the copyleft limitations
> of the GPL are trivial to circumvent.

I don't think the FSF would agree [1].

> This is in fact, a good thing, because that shows that copyright is weak.
> Remember that the GPL is not a good thing, it is an evil thing: using the
> weapons of your enemies against them. If the weapons are weaker than
> expected, so much the better.

This is not about good or evil.

>> The GPL-3 requires that the 'Corresponding Source' of the distributed object code
>> is also distributed. This is defined as [1]:
>> The “Corresponding Source” for a work in object code form means all the source
>> code needed to generate, install, and (for an executable work) run the object
>> code[...]
> Remember that copyright is for works of art. Art has no obligation to work.
> If you can run the program until it crashes with "error while loading shared
> libraries", then technically it fulfills the requirements of the GPL.
> Otherwise, you would be violating the GPL each time you make a bug.

The GPL does not require that programs can run, only that distributors
provide the source code of everything that is needed to run the program,
except system libraries.

So you can distribute e.g. a GPL binary linking with libfoo.so, without
distributing libfoo.so, as long as you distribute the source code
of libfoo.so.
However, claiming that libfoo.so is not required to run the binary
would be bizarre.

Best regards,

1: https://www.gnu.org/licenses/gpl-faq.html#GPLIncompatibleLibs

More information about the ffmpeg-devel mailing list