IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Application C++ avec projet sous licence Gplv3 [Licence/Justice]


Sujet :

C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut Application C++ avec projet sous licence Gplv3 [Licence/Justice]
    Bonjour,

    Je développe sous Linux un logiciel commercial en C++ que mon entreprise à terme vendra, dans lequel je souhaite intégrer un logiciel open source sous licence GPLv3 cela pose t-il problème ?

    A savoir que je l'exécute juste, je ne le modifie pas.

    Je vois toute sorte de réponses mais aucune claire.

  2. #2
    Membre expérimenté Avatar de Trademark
    Profil pro
    Inscrit en
    Février 2009
    Messages
    762
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 762
    Points : 1 396
    Points
    1 396
    Par défaut
    the freedom to use the software for any purpose
    source : http://www.gnu.org/licenses/quick-guide-gplv3.html

    Tu peux quand même consulter la faq, voir si l'usage que tu en fais ne viole pas un article de la licence.

  3. #3
    Membre éclairé
    Avatar de Ekleog
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 448
    Points : 879
    Points
    879
    Par défaut
    Selon la FSF, dès qu'il y a un lien de dépendance envers un programme GPL'é, le programme doit être sous GPL.
    Si, donc, c'est à l'utilisateur de donner en argument de ligne de commande le nom du programme GPL'é, alors il est possible de l'exécuter par le programme propriétaire.
    Si le nom du programme GPL'é est hard-codé dans le programme, alors tu tombes sous le coup de la GPL.

  4. #4
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    290
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 290
    Points : 719
    Points
    719
    Par défaut
    Si tu distribues le binaire avec ton application, tu devras au moins distribuer son source.

    Sur la faq, j'ai trouvé ça :
    What is the difference between an “aggregate” and other kinds of “modified versions”? (#MereAggregation)
    An “aggregate” consists of a number of separate programs, distributed together on the same CD-ROM or other media. The GPL permits you to create and distribute an aggregate, even when the licenses of the other software are non-free or GPL-incompatible. The only condition is that you cannot release the aggregate under a license that prohibits users from exercising rights that each program's individual license would grant them.

    Where's the line between two separate programs, and one program with two parts? This is a legal question, which ultimately judges will decide. We believe that a proper criterion depends both on the mechanism of communication (exec, pipes, rpc, function calls within a shared address space, etc.) and the semantics of the communication (what kinds of information are interchanged).

    If the modules are included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program.

    By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut
    Si je comprends bien, si je ne fais qu'exécuter les commandes ou fonctions de l'application sous GPLv3, je n'ai pas besoin de redistribuer mon code source si ce n'est le code source de l'application GPLv3.

    Et en imaginant que je veuille modifier le code source de l'application GPlv3, mon logiciel tombe aussi sous la licence Gplv3.

    C'est bien ça?

  6. #6
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    290
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 290
    Points : 719
    Points
    719
    Par défaut
    Et en imaginant que je veuille modifier le code source de l'application GPlv3, mon logiciel tombe aussi sous la licence Gplv3.
    Moi je dirais que non, mais je suis vraiment pas un expert. Je suis certain que tu dois rendre le source de cette application là accessible (et exactement cette version, c'est à dire que les gens qui récupèrent le source doivent pouvoir produire le même binaire que celui que tu distribues), mais je ne pense pas que ça rende ton application forcément GPLv3.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut
    Par conséquent, si je le modifie je dois donc bien distribuer mon code source, car le problème est qu'il ne faut pas que l'on puisse reconstituer mon application car, sans rentrer dans les détails, mon entreprise ne pourra pas vendre quelque chose qui existe de manière libre.

  8. #8
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    290
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 290
    Points : 719
    Points
    719
    Par défaut
    Par conséquent, si je le modifie je dois donc bien distribuer mon code source, car le problème est qu'il ne faut pas que l'on puisse reconstituer mon application car, sans rentrer dans les détails, mon entreprise ne pourra pas vendre quelque chose qui existe de manière libre.
    Si tu parles du soft libre, la réponse est OUI, tu dois ABSOLUMENT publier le code source d'une application GPLv3 que tu distribues, modifiée ou pas.

    Sur une note plus personnelle, j'aurais du mal à payer pour un logiciel qui était libre à l'origine et qu'une société me vend SANS LE CODE SOURCE.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut
    Bien évidemment le code source de l'application Gplv3 sera redistribué, cependant mon code source en C++ qui fait appel à des fonctions de l'application Gplv3 ne doit en aucun cas pouvoir être redistribuer.

  10. #10
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    290
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 290
    Points : 719
    Points
    719
    Par défaut
    Quand tu dis "[...]fait appel à des fonctions[...]", tu pourrais préciser un peu comment ça marche ?

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut
    Le logiciel sous GPLv3 : il décode des bits. Ce sont simplement des fonctions en C que je lance par l'intermédiaire du terminal Linux.

    De mon côté, j'ai une simple fenêtre en C++, et je veux juste adapter ou lancer ces commandes Linux à partir de mon application en C++.

  12. #12
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 368
    Points : 23 620
    Points
    23 620
    Par défaut
    Hello,

    Il y a un quiz sur le site de GNU pour voir ce que l'on croit pouvoir faire ou pas avec des logiciels en GPL. On s'aperçoit notamment que la GPL est encore plus restrictive qu'on le croit souvent. Par contre, je ne sais pas si ce quiz prend en compte la GPLv3.

    Si tu utilises une bibliothèque externe en GPL et que tu la lies à ton programme pour appeler ses fonctions (en C, par exemple), que ce soit dynamiquement ou statiquement, alors ton programme est considéré dépendre cette bibliothèque (ce qui est vrai) et doit être en GPL également. C'est pour pallier ce cas précis qu'a été écrite la « LGPL », initialement pour Library GPL, renommée ensuite en Lesser GPL. La LGPL est une licence différente de la GPL.

    Ça a l'air très contraignant comme dit ça mais, au final, le code de la bibliothèque fait bien partie intégrante de ton processus, quelle que soit la façon dont il a été chargé et fait donc partie du même programme au yeux du micro-processeur. Et surtout, les contraintes seraient les mêmes avec un logiciel propriétaire : si tu développes une application qui s'appuie sur une bibliothèque payante, alors tu es obligé d'acheter une licence par utilisateur et, donc, d'inclure son prix dans celui de ta propre licence. Ou de l'afficher dans la liste du « matériel » nécessaire pour faire fonctionner ton application, ce qui revient au même : l'utilisateur final devra l'acquérir.

    Après, je ne sais pas exactement où cela s'arrête : est-ce que les appels système du noyau Linux (qui est en GPL) sont inclus dans ces conditions ? Parce qu'autrement, il devient difficile d'écrire un logiciel n'ayant aucune dépendance (ce qui reste vrai aussi), mais j'ai tendance à penser qu'à partir du moment où on écrit un logiciel réputé portable et s'appuyant exclusivement sur les normes publiques, alors on peut livrer le système d'exploitation et le logiciel en question de manière indépendante et, donc, s'affranchir des conditions de la GPL. C'est évidemment à vérifier.

    Donc, désolé, ce n'est pas encore une réponse directe à ta question, mais ça débroussaille un peu l'idée générale.

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut
    J'aurais presque préféré qu'il soit payant le logiciel Gplv3... Mon entreprise aurait acheté la licence et j'aurai pu coder mon application sans problème sans redistribuer les sources...
    Alors que là je suis dans une impasse...

  14. #14
    Membre confirmé

    Inscrit en
    Août 2007
    Messages
    300
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 300
    Points : 527
    Points
    527
    Par défaut
    Alors pourquoi ne pas contacter l'auteur du logiciel dont vous parlez? Peut-être sera-t-il ouvert à une licence privée, payante évidemment. Les deux types de licences peuvent très bien s'appliquer au même logiciel, selon les volontés et restrictions choisies par le titulaire des droits.
    "Maybe C++0x will inspire people to write tutorials emphasizing simple use, rather than just papers showing off cleverness." - Bjarne Stroustrup
    "Modern C++11 is not your daddy’s C++" - Herb Sutter

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut
    C'est un projet abandonné depuis plus d'un an mais de toute façon l'auteur défend le monde du libre (ce qui est bien entendons nous bien), c'est d'ailleurs le but de son application. Et il est très explicite dans son code source quant à la réutilisation : Toute réutilisation de son code devra être publié sous licence Gplv3.

    Il a raison, seulement il est donc impossible pour moi et mon entreprise d'utiliser son application pour en créer une commerciale, c'est ce que je déplore bien que je le conçoive.

  16. #16
    Membre éclairé
    Avatar de Ekleog
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 448
    Points : 879
    Points
    879
    Par défaut
    Citation Envoyé par Obsidian Voir le message
    [...]
    Après, je ne sais pas exactement où cela s'arrête : est-ce que les appels système du noyau Linux (qui est en GPL) sont inclus dans ces conditions ? Parce qu'autrement, il devient difficile d'écrire un logiciel n'ayant aucune dépendance (ce qui reste vrai aussi), mais j'ai tendance à penser qu'à partir du moment où on écrit un logiciel réputé portable et s'appuyant exclusivement sur les normes publiques, alors on peut livrer le système d'exploitation et le logiciel en question de manière indépendante et, donc, s'affranchir des conditions de la GPL. C'est évidemment à vérifier.
    [...]
    Il me semble que le noyau linux a justement une exception pour tout le code en espace utilisateur.
    Par contre, théoriquement, tout code en espace kernel est sous GPLv3.

    Citation Envoyé par quake3 Voir le message
    C'est un projet abandonné depuis plus d'un an mais de toute façon l'auteur défend le monde du libre (ce qui est bien entendons nous bien), c'est d'ailleurs le but de son application. Et il est très explicite dans son code source quant à la réutilisation : Toute réutilisation de son code devra être publié sous licence Gplv3.

    Il a raison, seulement il est donc impossible pour moi et mon entreprise d'utiliser son application pour en créer une commerciale, c'est ce que je déplore bien que je le conçoive.
    Ne pourrais-tu pas alors écrire toi-même ces fonctions ?
    Par ailleurs, le code étant en GPL, tu y as accès pour pouvoir écrire les tiennes. Après, il faut prendre garde à ne pas c/c (ni s'inspirer de trop près), sans quoi le code tomberait sous GPL aussi.

    Après, selon les ventes attendues pour ton application commerciales, beaucoup de personnes sont prêtes à changer d'avis et à vendre leur logiciel, pour un prix suffisant. Par contre, si l'application sous GPL a reçu des participations d'utilisateurs multiples, alors même l'auteur principal n'aura pas le droit de revendre le code.

    Toujours est-il que ça ne vous coûtera rien de le contacter.

    (Une autre solution étant de mettre votre programme sous GPLv3, en espérant que personne ne verra le fichier COPYING dans le dossier programme et ne vous demandera la source. Parce que la GPLv3 n'interdit pas explicitement la vente, je crois. De toute façon, même si quelqu'un obtient la source, la mère de famille de moins de 50 ans va croire que la version qu'il redistribuera est une version vérolée par trouze mille virus, donc ... A vous de voir !)

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut
    C'est vraiment super compliqué voire impossible de tout recoder, je crois que je vais tout simplement ne pas l'utiliser... c'est bête d'en arriver là à cause d'une licence libre

  18. #18
    Membre éclairé
    Avatar de Ekleog
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 448
    Points : 879
    Points
    879
    Par défaut
    En même temps, quelle idée de vouloir faire un programme propriétaire ?

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 111
    Points : 52
    Points
    52
    Par défaut
    C'est vrai, mais quand le patron décide, on obéit ^^

  20. #20
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 612
    Points : 30 612
    Points
    30 612
    Par défaut
    Salut,

    Ceci dit, il faut bien etre conscient du fait que la GPL n'interdit absolument pas de vendre un binaire développé sous cette license.

    La seule obligation qui est faite est celle de faire offre écrite de fournir le code source (et, cela va de soi, de respecter cette offre )

    Il existe, par exemple, des distributions linux qui sont payantes et dont les boites se portent plutot bien, merci pour elles (je pense, entre autres, à RedHat, Suze ou encore Mandriva (ex mandrake) )

    La seule chose, avec un logiciel libre, c'est que tu ne pourras empêcher personne de le fournir à son voisin ou de le mettre en téléchargement, et que si quelqu'un le télécharge ailleurs que chez toi et en demande le code source, tu devra respecter l'offre de le fournir.

    Mais, quand on voit avec quelle facilité on trouve des copies de gros programmes et des cracks ( n'oubliez jamais que c'est illégal, quand meme ) on se rend de toutes manières compte qu'une licence propriétaire n'a jamais arrêté grand monde
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

Discussions similaires

  1. Export Application Java avec HSQLDB sous Eclipse
    Par lemzo84 dans le forum JDBC
    Réponses: 2
    Dernier message: 20/08/2016, 10h18
  2. créer une application python avec licence
    Par njock dans le forum Général Python
    Réponses: 1
    Dernier message: 31/05/2012, 23h22
  3. Developpement Application C++ avec projet Gplv3
    Par quake3 dans le forum Licences
    Réponses: 0
    Dernier message: 14/05/2012, 16h00
  4. Setup.exe avec saisie de clé de licence
    Par marcootz dans le forum Windows
    Réponses: 4
    Dernier message: 06/08/2007, 09h29
  5. Réponses: 4
    Dernier message: 23/03/2007, 12h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo