From: "H. Simpson" Date: 2004-08-06T08:31:48+09:00 Subject: Re: Amazing GUI toolkit with visual designer & Ruby Integration Jim Weirich wrote: > H. Simpson wrote: > >> QUOTE FROM LGPL: >> >> "However, linking a "work that uses the Library" with the Library >> creates an executable that is a derivative of the Library (because it >> contains portions of the Library), rather than a "work that uses the >> library". The executable is therefore covered by this License. >> Section 6 states terms for distribution of such executables." >> >> MY TRANSLATION: If you statically link to LGPL library, then your >> application is considered a "derivative of the Library" rather than a >> "work that uses the library". > > > Correct. And section 6 of the LGPL covers distributing such a work. One > of your options is to provide the source and object code of the library > (only the library) and the object code of your proprietary work (LGPL: > 'with the complete machine-readable "work that uses the Library", as > object code and/or source code'). > > Source code is not required for your proprietary code (only > modifications to the library itself require source). The intent is that > the end user may modify the library (which is open source after all) and > relink your application with it. Now providing your proprietary code in > an object linkable format may still be objectionable to you, but the > LGPL never makes you provide the source to your own code[1]. > Section 6 clearly states you have to give permission for reverse engineering your work. This is not acceptable in most commercial software products that rely on that restriction within the licensing terms to help protect intellectual property such as trade secrets--look at the landmark lawsuits that heavily relied on the "you may not reverse-engineer" restriction within the licensing agreements. You also left out a very important part of Section 6a which states: "so that the user can modify the Library and then relink to produce a modified executable containing the modified Library." The complete LGPL Section 6a states: "a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.)" So if you statically link to a modified version of Fox-Toolkit, then you have to give users permission to reverse engineer your application AND also comply with the terms in LGPL Section 6 (such as 6a quoted above). Simply not an option for me except on hobby projects. Others might not care.