GPL dependencies
I recognized that OpenCV has some GPL licensed dependencies.
For example ldd
tells me (on Ubuntu 14.04) that /usr/lib/x86_64-linux-gnu/libopencv_highgui.so
dynamically links (among many others) /usr/lib/x86_64-linux-gnu/libjbig.so.0
and /usr/lib/x86_64-linux-gnu/libxvidcore.so.4
. Both, libjbig and libxvidcore, are licensed under GPLv2.
But OpenCV is licensed under BSD. How does this comply with the terms of the GPL. The GPL states (§2.b):
You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
Shouldn't OpenCV (or at least the high GUI module) also be licensed under GPLv2?
And what happens to closed source applications that are using OpenCV?
I am a complete non expert at license things.
I wonder if OpenCV remains BSD if you build it using only libraries provided in the OpenCV package, i.e.: 3rdparty. I think that you have to provide an environment with only BSD licenses if you want to remain completly BSD. If you have proprietary libraries like H264 on your computer, OpenCV will be able to save video with H264 codec if you choose this codec but I think it is the developer responsability to manage to keep the things clean.
That's how I see the things. Again, I am not really aware of license issues.