> -----Original Message----- > From: pic microcontroller discussion list > [mailto:PICLIST@MITVMA.MIT.EDU] On Behalf Of Byron A Jeff > Sent: Tuesday, January 27, 2004 6:08 PM > To: PICLIST@MITVMA.MIT.EDU > Subject: Re: [OT:] SCO lobbying Congress about Linux > > > On Tue, Jan 27, 2004 at 04:00:08PM +0100, Wouter van Ooijen wrote: > > > AFAIK: > > > > > > - if you use GPL source code *STATICALLY LINKED* to your own > > > code, you must release your source code as GPL. > > > > > > - if you use GPL source code *DINAMICALLY LINKED* to your > > > code, yours is not GPL, unless you want it to. > > > > I think you are right if you meant LGPL. For GPL this > distinction is not > > made. > > Correct. If it's GPLed code, you must release the source in > all cases when > you distribute additions or modifications. Note that this applies to > distribution only. If you make changes and you don't give it > to anyone, then > you're not obligated to do anything at all. > > > Unfortunately a PIC chip never contains dynamically linked code... > > True. But as you well know that with the LGPL if you > statically link, you > still don't have to release the non library source. But you do have to > have a way for a user to relink the applications code to an > updated library. > And the current PIC tools can support this. A quick example: > > 1) I write a library for the PIC and make it LGPL. I release > the source and > a relocatable object of the code. > > 2) You write an application as a relocatable object and use > the linker to link > my library in. You program the complete executable onto a PIC > and sell it. > Note that you make no changes to the library in this case. > > Now given this situation you do not have to release the > source to your code > as its just a user of the library. However you do have to > make relocatable > objects of your application available to your users so that... > > 3) I update the library and make it 50 times more efficient > than before. The > end user can get my library relocatable object, your > application relocatable > objects and use the linker to create a new, more efficient > executable that > they can then use. > > Note that you never released your source to the applications > code. However by > facilitating relinking (even statically) the user remains > free to use the free > library in such a way as to benefit them. Also note that you > can place any > license you want for your source and relocatable objects. No > copying, no > reverse engineering (I believe...???) etc as long as you do > not restrict the > users rights to utilize the free library. > > Now we both know that JAL doesn't do this at this time, > because it includes the > library code and produces absolute executables that cannot be > relinked. > So the BSD would be a better fit for JALs libraries as is > does not have the > "must be able to update" clause. > > A better solution is to recode JAL to produce relocatable > objects. Then the > full force of the LGPL can then be utilized. > > BAJ > > -- > http://www.piclist.com hint: PICList Posts must start with ONE topic: > [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads > -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads