La section 6 de la licence s'applique dans le cas de Java. C'est à dire qu'un import java est équivalent à l'édition des liens en C (la liaison dans java est entièrement au runtime, pour ceux qui n'auraient pas remarqué) .
Ce qui signifie que si vous faites des modifications à une bibliothèque LGPL que l'on utilise de cette manière, vous devez publier les modifications selon les termes de la licence. La situation est la même que pour du C/C++.
Le probleme d'Apache est qu'ils veulent leurs bibliothèques sous une licence plus permissive que celles de GNU (en particulier sur le copyright). Cette clarification m'a paru nécessaire après l'énorme incompréhension suivant la publication par /. d'un troll assez bien ficelé sous le titre « La LGPL est virale pour Java ».
L'auteur sous-entendait que les classes java liées au runtime avec des .jar sous LGPL devaient être sous LGPL également. J'espère avoir dissipé cette confusion.
Le problème vient de la formulation floue du dit article 6 :
As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. [...]
Certains ont vu la une faille pour les langages dont la "liaison" s'effectue au runtime comme Java, ce qui vient d'être clarifié.
Aller plus loin
- Le courriel sur mane.comp.jakarta.poi.devel (11 clics)
- Le texte de la LGPL (6 clics)
- Du choix de sa licence GNU (3 clics)
- Le troll sur /. (4 clics)
# Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anthony . Évalué à 2.
y a des gens qui ont la chance d'avoir des vacances ;)
# Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par koxinga . Évalué à 1.
# 2ème lien
Posté par Olivier Faurax (site web personnel) . Évalué à 1.
# Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par ccomb (site web personnel) . Évalué à 6.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anthony . Évalué à 2.
desole, mais travaillant aux US, j'ai un peu perdu de vue la nomenclature francaise .... et les accents.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par N/A . Évalué à 2.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Nÿco (site web personnel) . Évalué à 1.
Maintenant, il reste ça :
> C'est à dire qu'un import java est équivalent au link en C (la liaison dans java est entièrement au runtime, pour ceux qui n'auraient pas remarqué) .
Vous avez des propositions pour link (liaison ?) et runtime ? Y'a copyright aussi un peu plus loin...
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par MrTout (site web personnel) . Évalué à 5.
C'est à dire qu'un « import » java est équivalent à une édition de lien en C (la liaison en java est entièrement réalisée à l'exécution, pour ceux qui n'auraient pas remarqué).
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Rolland Dudemaine . Évalué à 2.
au runtime -> a l'execution
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par dvrasp . Évalué à 2.
Il y a des termes techniques qui traduits en français ne sont plus clairs.
<< Link >> ne devrait pas être traduit, au même titre que << import >>, parce que ça fait référence à un processus bien précis que l'on a l'habitude de nommer comme ça. (Et ce sont des mots que l'on reconnît rapidement si l'on lit la dépêche en diagonale.)
Bon, << runtime >> est plus discutable.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par atlexx . Évalué à 2.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anonyme . Évalué à 1.
# Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par reno . Évalué à 4.
Je suis convaincu que la majorité des développeurs Java pensait de bonne foi, qu'importé un point jar était l'équivalent de la liaison dynamique pas statique.
J'ai lu /. et d'ailleurs une bonne partie des intervenant le croyait toujours car l'explication de l'homme de loi de la FSF était aussi claire que d'habitude quand un homme de loi parle, c'est à dire nébuleuse..
Pff, un avocat ça ne doit pas savoir répondre par oui ou par non..
Quelqu"un connait-il une license "équivalente" à la LGPL, mais qui n'aurait pas ce problème?
Ce serait bien si la FSF en proposait une de ce type..
[^] #
Posté par Francois Revol (site web personnel) . Évalué à 1.
Et alors, c'est pas le cas ?
s/porté/porter/ btw
liaison dynamique == au runtime
(en fait "dynamique" est + restrictif, on prépare la liaison avec ld avant l'exécution)
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anthony . Évalué à 5.
ce qui a conduit certains huluberlus a dire que la license de toutes les classes de sun etant incompatible avec la lgpl on pouvait oublier cette license si on developpe sous java.
tout cela est faux.
de plus, le "reel" probleme vise est bien celui specifique de "j'ai modifie le jar sous lgpl mais comme c'est un jar, je dois pas redistribuer les modifs ..." et le message de la fsf est : "tu dois le faire"
si j'ai poste cette news c'est par rapport au relatif desarroi que cela a cree parmis les entreprises : elles se sont vues (celles qui ont vu le troll passer) forcees de publier leur code sous lgpl pendant un moment.
Mais bon, en dernier ressort : rien ne lie l'interpretation de la license faite par la fsf a celle que l'utilisateur en fait. En cas de conflit, c un juge qui decide.
D'ou la necessite imho de clarifier la license.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par reno . Évalué à 1.
OK donc faire une librairie (un .jar) en Java est totalement identique a la faire en C/C++ du point de vue de la LGPL.
(Ouf!) Pas de quoi en faire un fromage, effectivement.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par tititi . Évalué à -1.
<< Et pour multideskos, c'est valable aussi ? >>
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Richard Van Den Boom . Évalué à 2.
C'est exactement la même chose que "linker" avec une bibliothèque LGPL, autant que je comprenne.
On dirait que cette news ne dissipe pas tous les doutes :-)
Cordialement,
# Si j'ai bien compris
Posté par pikachu . Évalué à 4.
[^] # Re: Si j'ai bien compris
Posté par Snark_Boojum . Évalué à 4.
Mais le programme qui utilise le jboss patché peut très bien être propriétaire...
NB: je repompe en plus long la phrase juste avant la phrase en gras...
[^] # Re: Si j'ai bien compris
Posté par HappyPeng . Évalué à 1.
[^] # Re: Si j'ai bien compris
Posté par Anthony . Évalué à 1.
tu licenses ton appli comme tu veux, mais jboss reste sous lgpl.
et tu redistribue les changements que tu as faits a jboss
c tout.
[^] # Re: Si j'ai bien compris
Posté par pikachu . Évalué à 6.
[^] # Re: Si j'ai bien compris
Posté par Nelis (site web personnel) . Évalué à 2.
Maintenant une nouvelle question, qu'appelle-t-on "modifier la bibliothèque LGPL" ? Si dans mon programme j'étends une classe de la bibliothèque, je suppose que ce n'est pas une modification de la bibliothèque ? Si ? Par contre si je "patch" le jar de la bibliothèque pour remplacer l'implémentation d'une classe, là je dois distribuer cette classe précise sous LGPL. C'est bien ça ?
[^] # Re: Si j'ai bien compris
Posté par Anthony . Évalué à 3.
Le pb etait que sous le pretexte des modalites d'editions de liens de java, certains ne redistribuaient pas leurs modifs de la bibliotheque.
Si tu etends une classe de la bibliotheque dans ton programme ou dans une autre bibliotheque ca passe.
Si tu etends cette meme classe dans la bibliotheque lgpl (que tu pourrais ainsi redistribuer, modifiee, a tes clients), tu dois publier le patch et la distribuer sous lgpl.
desole si la news n'est pas super claire.
L'une des choses a retenir, c'est que la license est un bon endroit pour dissiper les doutes sur tous ces termes et qu'a defaut de le faire, on se retrouve avec des communiques vaseux que tout le monde interprete comme il veut....
[^] # Re: Si j'ai bien compris
Posté par HappyPeng . Évalué à 1.
# puisqu'on est dans les trolls
Posté par billy . Évalué à -3.
voila bon troll
[^] # Re: puisqu'on est dans les trolls
Posté par Gabriel Santonja . Évalué à 2.
Visiblement l'apache group tient à sa licence, aprés tout c'est un peu normal c'est la leur.
Maintenant si j'ai bien compris l'aspect viral de la licence LGPL ne porte que sur les sources du composant en LGPL?. Cela ne fait pas un peu tempete dans un verre d'eau?.
[^] # Re: puisqu'on est dans les trolls
Posté par Anthony . Évalué à 2.
c'est une tempete dans un verre d'eau.
la phrase a retenir c'est le titre de la news.
Le probleme c'est que qd l'annonce a ete faite par la fsf, la plupart des gens ne l'ont pas comprise.
[^] # Re: puisqu'on est dans les trolls
Posté par Yann KLIS (site web personnel) . Évalué à 1.
http://cocoon.apache.org/lenya/(...)
[^] # Re: puisqu'on est dans les trolls
Posté par HappyPeng . Évalué à 1.
Où est le virus ?
# Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par - - . Évalué à 1.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anonyme . Évalué à 3.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par dvrasp . Évalué à 1.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anonyme . Évalué à 1.
Dans les faits, quelqu'un (individu, groupe, entreprise) qui réalise un travail dérivé d'un logiciel placé sous une licence libre non copyleft (BSD, Apache, MIT, ...) aura intéret à publier en retour le maximum de modifications. Pas pour des raisons philosophiques, mais pratiques. Quand la version d'origine monte en version, faire évoluer un travail dérivé en appliquant les mises à jour de la version d'origine est difficile (création de patchs par forcément simples, nécessité de faire des tests d'intégrations). Parfois ça peut aller jusqu'à obliger à ne plus intégrer les évolutions de la version de base. En faisant intégrer dans le logiciel d'origine les modifications "d'intéret général", ça devient nettement plus simple.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par reno . Évalué à 2.
Note qu'avec la license Apache, au moins ce genre de confusion sur l'utilisation dans les produits dérivés ne se posent pas..
En plus, si tu veux developper un outil avec la license BSD qui utilise une librairie LGPL, tu est obligé d'utiliser l'édition de lien dynamique pas l'edition de lien statique..
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par morge . Évalué à 1.
J'ai developpé une appli Java qui utilise JAMA (domaine publique).
http://www.emse.fr/~mmorge/software/JAHP.html(...)
Quelle licence choisir (LGPL/GPL/Apache truc bidule) ?
MM.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anonyme . Évalué à 1.
La licence Apache pour du Java ça peut etre une bonne stratégie, grace à la clause de pub. Pour un logiciel proprio qui se baserait sur ton code, devoir indiquer "ce logiciel est basé sur xxx développé par trucmuche, un logiciel qui fait yyy, dispo sur http://plopdaplop.com(...)", c'est moins attrayant ... Vu que tu choisis le texte de la clause de pub, ça peut etre dissausif dans certains cas. En revanche vis-à-vis de logiciels libres/open, ça ne pose pas de problème.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par William Steve Applegate (site web personnel) . Évalué à 1.
Envoyé depuis mon PDP 11/70
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anonyme . Évalué à 4.
Je déplore que beaucoup de développeurs choisissent la GPL par défaut, sans l'avoir comprise. Le GPL-quizz est un très bon révélateur. Meme quand tu lis des commentaires sur un site comme celui-ci, tu te rend compte que beaucoup de gens sortent malgré eux des énormités. Par exemple j'en ai vu un l'autre jour qui disait que la licence MIT n'était pas libre. On voit également souvent l'amalgame libre == GPL, pas GPL == pas libre, ce qui est bien entendu absolument faux. La FSF n'a pas (et n'a pas à l'avoir) le monopole du logiciel libre. Ils ont leur vision, mais d'autres comme la Apache Software Foundation ont une vision différente qui a tout autant sa place.
Le choix d'une licence doit etre un choix stratégique, autrement dit un choix réfléchi et non pas fait par défaut. Il faut tenir compte de ce qui est développé, de son contexte d'utilisation, de ce que l'on veut permettre ou non avec, ... bref c'est très variable.
Par exemple si je développe un module permettant de lire dans une archive Zip et que je le place sous licence GPL ou LGPL, c'est un peu excessif à mon gout. Il n'y a rien de faramineux là-dedans. En revanche si je m'appelle Mr Trolltech et que je fais Qt, la stratégie de licences GPL/proprio est non seulement logique, mais c'est aussi un coup de maitre. Si je m'appelle Mr Opera et que je fais un navigateur, ma source de revenu qui me permet de vivre est de vendre des licences. Sachant que toute licence libre ou ouverte ammène à une possibilité d'obtention d'une copie à cout réduit .... bye bye ce type de licence ... Si je développe une application dans un domaine convoité où des gens peu scrupuleux peuvent "profiter" (dans le mauvais sens du terme) de mon travail, alors le copyleft peut etre mon arme, meme si on constate à l'occasion des violations de la GPL (et encore, il doit y en avoir un paquet qui ne se verront jamais, ne serait-ce que dans le cadre de développements sur mesure ...).
Tout ceci pour illustrer que la diversité des tactiques que l'on peut employer. Bref, il faut étudier au cas par cas si le copyleft apporte de la valeur ou si au contraire il en enlève. Et je crois qu'il n'y a pas de règle générale :-)
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par #3588 . Évalué à 1.
Quitte à ne pas comprendre une licence dans les premiers temps, autant que ce soit celle-là qu'on ait choisie. Si après quelques temps le développeur ne veut pas maintenir le copyleft, il peut passer à une autre licence, voire relicencier les anciennes versions en non-copyleft si ça présente un intérêt. Par contre, celui qui serait parti sur du non copyleft et qui souhaite y passer ne peut le faire que pour les versions suivantes, et ne pourra pas rendre copyleft ce qu'il avait mis en non-copyleft par ignorance.
« On voit également souvent l'amalgame libre == GPL, pas GPL == pas libre, ce qui est bien entendu absolument faux. La FSF n'a pas (et n'a pas à l'avoir) le monopole du logiciel libre. Ils ont leur vision, mais d'autres comme la Apache Software Foundation ont une vision différente qui a tout autant sa place. »
Mais toi aussi tu dis une énormité : tu fais comme si « GPL == libre » était le point de vue de la FSF. C'est faux et ils sont clairs là dessus. Il y a des gens qui font la confusion (en fait ils confondent copyleft et libre), mais ils n'ont rien à voir avec la FSF et ça ne correspond pas du tout au discours de la FSF.
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Anonyme . Évalué à 1.
Choisir une licence sans l'avoir comprise me semble un peu léger. Je ne signe pas un contrat sans en comprendre les conséquences :-)
"Mais toi aussi tu dis une énormité : tu fais comme si « GPL == libre » était le point de vue de la FSF. C'est faux et ils sont clairs là dessus. Il y a des gens qui font la confusion (en fait ils confondent copyleft et libre), mais ils n'ont rien à voir avec la FSF et ça ne correspond pas du tout au discours de la FSF. "
Relis ce que j'ai dit, je parle moi aussi des gens qui font cette confusion et qui estime que la FSF est la référence en matière de libre :-)
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par #3588 . Évalué à 0.
Ben on s'en fout que ce soit léger, parce que c'est ce qui se passe en général. Il n'y a pas de mal à ne pas avoir compris toutes les subtilités et conséquences de la GPL après seulement quelques lectures. Évidemment le cas idéal c'est que tout le monde comprenne parfaitement les licences utilisées. Mais c'est utopique, il ne faut pas trop y compter, donc il vaut mieux faire le choix le plus prudent, ayant le moins de conséquences si on veut changer de licence par la suite.
« Relis ce que j'ai dit, je parle moi aussi des gens qui font cette confusion et qui estime que la FSF est la référence en matière de libre :-) »
J'ai bien lu avant de répondre justement. Dans ta phrase « Ils ont leur vision... » le « ils » désigne bien la FSF, tu compares à la fondation Apache ensuite. Or on peut très bien considérer la FSF comme une référence puisqu'ils ne dénigrent pas les autres courants du libre, ils expliquent clairement en quoi ils diffèrent. Ils recommandent la GPL mais le chapitre « licence libre » est bien plus vaste... Si les gens qui font la confusion prenaient la FSF comme référence, eh bien ils ne feraient pas de confusions justement ! ;)
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par Nelis (site web personnel) . Évalué à 2.
Moi je dirai plutôt le contraire ... Si je ne sais pas quelle licence choisir, je commencerai par une non-copyleft, car ainsi je reste le seul développeur et j'ai le droit de changer la licence pour une copyleft par la suite. Tandis que si je publie d'abord en copyleft, d'autres personnes vont travailler sur mon code, et je ne pourrais pas repasser l'application modifiée en non-copyleft car il faudrait l'accord de tout les développeurs, la seule version qui pourrait passer en non-copyleft est ma version de base ...
Enfin, personnellement je ne me poserais pas la question et je publierais plutôt en copyleft, mais dans le cas d'une personne qui ne saurait pas quoi faire, j'utiliserais plutôt mon raisonnement que le tiens. Qu'en pensez-vous ?
[^] # Re: La LGPL s'applique à Java exactement comme pour C/C++
Posté par #3588 . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.