Visite também: Currículo ·  Efetividade BR-Mac

O que é LinuxDownload LinuxApostila LinuxEnviar notícia


Nova biblioteca MySQL para C

Enviado por William Lima (wlimaΘprimate·com·br):

“Versão 1.0 da biblioteca Dolphin Connector já está disponível para download. O Dolphin Connector é licenciado sob BSD, diferente do MySQL Connector/C++ (GPL) e promete ser uma alternativa!” [referência: ]

• Publicado por Augusto Campos em 2011-01-14

Comentários dos leitores

Os comentários são responsabilidade de seus autores, e não são analisados ou aprovados pelo BR-Linux. Leia os Termos de uso do BR-Linux.

    Odair (usuário não registrado) em 14/01/2011 às 3:00 pm

    “Dolphin Connector is a simple MySQL C API wrapper for C++”… somente analisando isso ja da para ver que nao tem a ver com a noticia… Alem do que… observando o codigo fonte, ja se ve que o dolphin connector faz uso da Mysql C API (veja o include mysql.h na linha 15 em https://github.com/poetinha/dolphin-connector/blob/master/include/dolphinconn/resultset.h).

    William (usuário não registrado) em 14/01/2011 às 5:51 pm

    O título está incorreto (“C++”). E sim, ela faz uso da C API.

    José (usuário não registrado) em 14/01/2011 às 7:16 pm

    “O Dolphin Connector é licenciado sob BSD, diferente do MySQL Connector/C++ (GPL)”

    Acontece que o mysql.h é coberto pela GPL, então o Dolphin Connector não estará efetivamente sob licença BSD, pois como é usado com o mysql.h, o conjunto como um todo se torna GPL.

    William (usuário não registrado) em 14/01/2011 às 7:45 pm

    José,

    Sua afirmação está incorreta. Favor consultar:

    http://www.mysql.com/about/legal/licensing/foss-exception/

    José (usuário não registrado) em 14/01/2011 às 8:14 pm

    William, A cláusula de exceção que você colou se estende a um software que use sua biblioteca, mas ele continua sendo sujeito à GPL com essa cláusula de exceção. O que quero dizer? O programa que usar sua biblioteca terá de ter alguma dessas licenças permitidas na cláusula de exceção que você colou. Não por restrição da sua biblioteca, mas por causa da restrição da biblioteca que ela depende (biblioteca original do MySQL), a menos é claro, que a pessoa modifique sua biblioteca para não depender da biblioteca original do MySQL, mas no caso isso é praticamente inviável.

    O que isso significa na prática? Que não se pode usar a sua biblioteca, da forma como ela está, em um software proprietário, como seria possível caso sua biblioteca não dependesse do mysql.h e das bibliotecas originais do MySQL. A pessoa fica sujeita à licença do MySQL da mesma forma no final das contas.

    William (usuário não registrado) em 14/01/2011 às 9:17 pm

    link dinâmico com a biblioteca cliente do MySQL não é nem uma obra derivada, nem distribuição. sendo assim o código do Dolphin Connector (apenas) permanece sob 3-BSD.

    José (usuário não registrado) em 14/01/2011 às 11:06 pm

    William, http://www.gnu.org/licenses/gpl-faq.html#IfLibraryIsGPL

    Linkagem dinâmica em software proprietário só seria permitida caso a licença do mysql.h e componentes correlatos fosse a LGPL. Como a licença é GPL, a princípio só seria permitida estritamente a linkagem com software GPL. Entretanto, existe aquela cláusula de exceção que você colou, mas ela continua impedindo a linkagem com software proprietário.

    A sua biblioteca só poderia ser utilizada em software proprietário caso:

    Primeira opção – O desenvolvedor do software proprietário compre uma licença comercial do MySQL.

    Segunda opção – O desenvolvedor do software proprietário, ou você, reescrevesse as partes da biblioteca que dependem do mysql.h e componentes correlatos, para que deixassem de depender dos mesmos, por exemplo reimplementando o protocolo do cliente MySQL de forma auto-contida na sua biblioteca. Dessa forma apenas a licença BSD precisaria ser cumprida, visto que os componentes GPL deixariam de ser dependidos.

    Víctor (usuário não registrado) em 15/01/2011 às 11:33 am

    @José, na verdade esta discussão de que se a linkagem dinâmica de uma dll GPL por um software proprietário viola a GPL ou não, é um pouco complicada, pois depende muito de interpretação, sei que a GNU considera isto uma violação, mas existem interpretações que não há consideram, em um tribunal as chances de qualquer destas interpretações serem aceitas como correta é a mesma.

    José (usuário não registrado) em 15/01/2011 às 12:03 pm

    Víctor,

    O tribunal consideraria a intenção do detentor dos direitos autorais. Desde o início o MySQL foi licenciado sob GPL, e não sob LGPL, justamente para que pudessem vender licenças comerciais para quem fosse usar o MySQL em software proprietário. Como o detentor adotou essa interpretação a respeito da licença, interpretação escolhida de boa fé, considerando ser a opinião da FSF e a visão majoritária, o difícil seria um usuário da biblioteca sustentar que pode usá-la em software proprietário sem comprar uma licença comercial, ainda mais considerando que, de acordo com a convenção de Berna, o autor goza automaticamente de todos os direitos com relação a sua obra protegidos, e a mesma só pode ser explorada com autorização, no caso por meio de uma licença.

    E de qualquer forma, vamos lembrar que só estamos discutindo isso por causa do texto da notícia, onde diz “O Dolphin Connector é licenciado sob BSD, diferente do MySQL Connector/C++ (GPL) e promete ser uma alternativa!”. O que eu estou argumentando aqui desde o início é que isso não é efetivamente vantagem nem alternativa nenhuma, visto que o Dolphin Connector não deixa de depender de uma biblioteca licenciada sob a GPL.

    William (usuário não registrado) em 15/01/2011 às 2:09 pm

    MySQL Client e MySQL Connector/C++ são dois códigos distintos, apesar do último depender da MySQL Client assim como o Dolphin Connector. Sendo o Dolphin Connector, uma alternativa ao MySQL Connector/C++ apenas! O MySQL passou de LGPL para GPL na versão 4 (se não me engano). Enfim, mesmo possuindo uma licença enterprise para uso da MySQL Client, o MySQL Connector/C++ permanece GPL, entendeu a alternativa?

    José (usuário não registrado) em 15/01/2011 às 3:31 pm

    O MySQL Connector/C++ vem com a licença enterprise do MySQL sim. Pelo menos veio com a que temos aqui na empresa.

    William (usuário não registrado) em 15/01/2011 às 3:41 pm

    independente, permanece sob GPL…

    José (usuário não registrado) em 15/01/2011 às 4:13 pm

    Na licença diz que não.

    Profeta do Caos (usuário não registrado) em 16/01/2011 às 12:08 pm

    José, você esta completamente equivocado em seus argumentos, a linkagem dinamica não fará o software ser GPL.
    Sem criar flames, mas você tem formação em direito? É apenas curiosidade mesmo.

    José (usuário não registrado) em 16/01/2011 às 5:04 pm

    Profeta do Caos, Sou formado em Ciência da Computação pelo IME-USP e atualmente curso direito no Largo São Francisco. Portanto ainda sou apenas estudante de direito. Mas veja o link do FAQ da FSF. Lá você pode ver que a interpretação da FSF a respeito da licença que ELES escreveram é a mesma que a minha.

    tenchi (usuário não registrado) em 16/01/2011 às 9:43 pm

    @Profeta do Caos, linkar com código GPL faz o que é linkado ser GPL. A LGPL é que não tem esta obrigatoriedade. Estou trabalhando num sistema proprietário e uso nele vários componentes LGPL, pois esta licença permite que vc tenha aplicações proprietárias que linkam com código LGPL, mas não GPL.

    Creio que a biblioteca da notícia possa sim ser licenciada com uma licença BSD, mas a aplicação que utilizá-la terá obrigatoriamente que ser GPL.

    Como o José disse no início, se ela implementasse todo o protocolo de comunicação e não usasse código algum do mysql-connector ou que tivesse copyleft, talvez a licença BSD valesse.

Este post é antigo (2011-01-14) e foi arquivado. O envio de novos comentários a este post já expirou.