List:MySQL++« Previous MessageNext Message »
From:Basile STARYNKEVITCH Date:May 18 2007 1:06pm
Subject:Re: pro domo static library for MySQL++
View as plain text  
Warren Young wrote:
> Basile STARYNKEVITCH wrote:
>>
>> However, I disagree with the argument that a GPL-ed library should be 
>> linked
>> dynamically. Licence terms are legal stuff, linking mode is technical 
>> stuff.
> 
> The law does not allow you to reinterpret a license in a way that is 
> technically convenient for you.  The license's correct interpretation is 
> independent of your wishes.  If it's inconvenient for you to obey the 
> license, you simply have no legal ability to use the software: standard 
> copyright applies, you don't own the copyright on this software, and so 
> you have no right to copy the software.


I certainly don't want to start a lawsuit and I am pretty certain that 
the law to which I have to obey -I am a french citizen and my hosting 
company is french- is not the same as the law that you have to obey 
(since you are probably citizen of the USA. And not every human is a USA 
citizen and have to obey to Bush's government :-) - my president is 
Sarkozy [but he didn't got my voice]). The courts involved are 
different. The Bern convention on copyright is common.

Back to the point. I was referring to the following imaginary scenario:

I am developping an opensource GPL software FooBark (I am assuming this 
name is not used yet, please replace it by whatever is appropriate).

FooBark is a CGI application. It is linked with libmysqlpp.

At the exactly same moment, I put on the same site foobark.org (supposed 
to be hosted in France or Europe, and I being a French citizen):
   the full code source of FooBark as a foobark-0.1.tgz file, a source 
code under GPL license as http://foobark.org/foobark-0.1.tgz

   a demo of FooBark as http://foobark.org/foobark.cgi as a binary 
foobark.cgi which happens to be linked statically with libstdc++ and 
libmysqlpp and libmysqlclient (and any others) dynamically with libc.so 
libm.so libdl.so (because my hosting company don't provide anything 
else). Notice that you won't even be able to observe that foobark.cgi is 
statically linked (because in general you cannot access the binary of 
any running cgi programs, like you cannot access the binary of your 
Apache2 or PHP executable.).

Notice that I am distributing a source program and deploying at the same 
time a binary of the exactly same program, which I have wrote and 
release under GPL.

Notice that for libreadline, which is a GPL-ed library, there exists in 
some Linux distributions, some static binaries linked to it (IIRC, some 
versions of the rkiss shell shipped statically linked). I feel it is a 
compelling example.

Please tell me which exact part of the GPL or LGPL licence(s) forbid my 
example FooBark but allows statically linked binaries to libreadline

Again, I am definitely not talking about developping proprietery 
software, but only about GPL licensed software. And notice that dynamic 
linking is orthogonal to licensing. It could be concievable to produce 
an entire linux distribution without any shared library or ld.so linker. 
I don't see how that could hurt the GPL (or LGPL) license, which can 
(and has probably been) used on systems (like SunOS3) which did not had 
any shared libraries!

Are you saying that nobody could port MySQL++ to a static-library only 
system like old SunOS3 and release the source in GPL or LGPL licence 
together with the statically linked binaries?

Are you implying that non-shared linking systems cannot be developped in 
GPL licenses?

Is there anything in GPL which forbids demoing a GPL-ed application on 
the same site where the source code of this application is released?


Please reply by taking into account that I am exclusively thinking of 
GPL (opensource, free software under GPL v2 licence) applications 
(possibly using MySQL++). I am not talking about other kind of software 
development.

Recall that http://www.gnu.org/licenses/gpl.html says

   Activities other than copying, distribution and modification are not 
   covered by this License; they are outside its scope. The act of 
running   the Program is not restricted


Anyway, I won't use libmysqlpp. But with your reasoning, you might loose 
some clients, committed to open-source.


I repeat: linking is a technical issue (as is running a program: I could 
run a program on a chalk board). And I cannot imagine how can someone 
violate the GPL (or is it LGPL, I don't care here!) license of mysqlpp 
by publishing together the whole source of an application using it and 
at the same time demo-ing it on the web.


I strongly insist that I am talking only about an hypothetical web CGI 
application, licensed under GPL, which would have be distributed under 
GPL and at the same time deployed as a static binary. And again, I 
cannot understand how someone can know if a particular CGI is statically 
linked, or dynamically linked, or running under an emulator or a C 
interpreter, powered by pigeons, etc. The only thing you can measure on 
the web is HTTP protocol exchanges!

I am explicitly not talking about running a GPL-ed application on a site 
which does not at the same time publish the source form of it (under GPL 
licence).

Again, all the above is my imagination only. I won't use libmysqlpp. So 
don't threaten to sue me. It is irrelevant.

Thread
pro domo static library for MySQL++Basile STARYNKEVITCH17 May
  • Re: pro domo static library for MySQL++Warren Young18 May
    • Re: pro domo static library for MySQL++Basile STARYNKEVITCH18 May
      • Re: pro domo static library for MySQL++Warren Young18 May