* armin.gerritsen@philips.com (armin.gerritsen@philips.com) wrote:
Hello,
I want to use MAD in a commercial product (COM component) on Windows and Windows CE. I understood, that if I link MAD as a seperate library (DLL), I would not break GPL.
Linking a proprietary program with a GPL'd library is not allowed, static or dynamic. Perhaps you are thinking of the LGPL, which does allow dynamic linking.
Aha, I see there:
"... If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. "
So I need to make my sure the non-MAD part is
- identifiable as sections of that are not derived from MAD
- reasonably considered as an independent and separate work in itselve
You forgot the most important one: to qualify for this exemption, you must "distribute [the non-GPL linking parts] as separate works."
You cannot under any circumstances distribute a proprietary program that links with a GPL library either statically or dynamically. The exemption only says that a separate part of your program can remain proprietary *if distributed separately* from the part that links with the GPL library.
However, now I was wondering if I would link MAD staticaly, but make sure all calls are in one seperate source-file and distribute with the product that seperate source-file together with all documentation related to that file, giving credit to MAD, etc., and keep the rest of the source closed, I would still not break GPL.
Not true. Since that one source file links against a GPL library, it too must be GPL. At that point, linking the rest of your proprietary program with that one source file breaks the GPL.
Maybe I get my company to make the whole product GPL, but I'm afraid that they'll not agree. :-) Using a DLL is of course an option, but I'd prefer to distribute just one object. But I definitly don't want to break GPL or so.
The only way you can use MAD in your proprietary application is by getting Rob to license it to you under a separate license. According to the MAD home page, he may be willing to do this.
Joshua