QT-Programme statisch linken????



  • Scorcher24! Was für die Closedsource-MS-Runtime gilt, gilt natürlich auch für die Closedsource-Anwender-Programme. Richtig. Aber was hat das jetzt mit einem angeblichen Verbot zu tun? Mir ist immer noch nicht klar, wo mir als Entwickler generell verboten wird, statisch zu linken?

    Wenn die GPL generell das statische Linken untersagt, dann ist es die schlechteste Lizenz die mir untergekommen ist!
    Deine ganzen Zitate beziehen sich auf Fälle, wo jemand Closedsource entwickeln. will. X0r hat aber nichts davon gesagt. Wenn er GPL-Software entwickeln will, wird er ja wohl seine Anwendung mit Qt statisch linken dürfen, oder? Nur die MS-Runtime darf er weiterhin nicht statisch linken (außer er macht es in seinen vier Wänden).



  • @Bulli
    siehe meine erste Antwort:

    1.) Darfst du nicht statisch Linken, wenn du dein Programm nicht öffentlich zur Verfügung stellst. Siehe Lizenz.

    Mit GPL kannst du linken wie du willst, da du eh den SourceCode veröffentlichen musst.
    Mit LGPL kannst du statisch linken, wenn du den SourceCode veröffentlichst, darfst aber nur dynamisch linken, wenn du ClosedSource schreibst.
    rya.



  • Schreibe das nächste Mal besser "Darfst du nicht statisch Linken, wenn du dein Sourcecode nicht unter GPL zur Verfügung stellst. Siehe Lizenz.". Denn Programm und öffentlich impliziert das ehrlich gesagt überhaupt nicht... hatte eher verstanden, das wenn er seine Binaries nicht veröffentlicht.



  • Um mal auf die eigentliche frage zurückzukommen:

    Das problem mit der mingw10.dll tritt ja nicht nur beim statischen linken sondern grundsätzlich auf, wenn man mit mingw/gcc kompiliert. Die DLL ist wohl für irgendwelche thread exception geschichten da, soweit ich das aus dem trolltech mailinglisten herauslesen konnte.
    Entfernt man die option -mthreads aus dem makefile soll es wohl so gehen. Aber keine ahnung was das dann so für auswirkungen hat.



  • Hallo,

    die mingw10.dll musst Du mit ausliefern, da die Qt DLL's diese benötigen. Wenn Du das nicht willst, musst Du dir Qt selbst kompilieren und die mingw10.dll statisch linken lassen.

    Google weiss mehr darüber: "mingw10.dll qt link statically"

    Grüße,
    Egon



  • MasterK schrieb:

    Entfernt man die option -mthreads aus dem makefile soll es wohl so gehen.

    Aha, klingt gut, nur aus dem Debug oder Release Makefile des Projekts??? ( aus beiden?) Oder is ne Makefile im qt systemordner gemeint???



  • mal ne frage: wenn das Programm Qt Bibliotheken benützt und open source zur verfügung gestellt werden muss, was passiert mit anderen dlls die gar nicht open source zur verfügung gibt? z.b. directx?

    das ist so wie wenn ich funktionen für mein programm schreibe die nicht veröffentlich werden dürfen, das programm aber auf qt basiert?

    dann hätt ich gar nicht qt erlernen sollen?????



  • xBlackKnightx schrieb:

    mal ne frage: wenn das Programm Qt Bibliotheken benützt und open source zur verfügung gestellt werden muss, was passiert mit anderen dlls die gar nicht open source zur verfügung gibt? z.b. directx?

    das ist so wie wenn ich funktionen für mein programm schreibe die nicht veröffentlich werden dürfen, das programm aber auf qt basiert?

    dann hätt ich gar nicht qt erlernen sollen?????

    Die Lizenzen der Bibliotheken und Quelltexte, die du verwendest, müssen zueinander kompatibel sein; d.h. sie dürfen sich nicht gegenseitig verletzen.



  • Vllt. sollte mal der ein oder andere die LGPL und die GPL lesen BEVOR man darüber redet.

    Solange das was am ende rauskommt unter der GPL steht darfst du statisch linken bis du schwarz wirst.

    Wenn man meint man müsse unfreie Bibliotheken benützen (die in 90% der fälle eh nix taugen) ist man selber schuld wenn man mit Lizensen zu kämpfen hat.

    z.B. ist DirectX im vergleich zu OpenGL ein witz, aber um OpenGL benutzen zu können muss man halt wieder Programmieren können.

    Auf jeden fall darfst du ein Qt Programm Statisch linken. Das Programm muss am ende nur unter der GPL stehen.

    Die Kommerzielle Version von Qt darfst du auch Statisch linken wenn dein Programm am ende nicht unter der GPL steht, wenn dir das Geld wert ist^^



  • anonymusasdf schrieb:

    z.B. ist DirectX im vergleich zu OpenGL ein witz, aber um OpenGL benutzen zu können muss man halt wieder Programmieren können.

    Tut mir leid, aber auch wenn ich persönlich DirectX (aus reiner Programmierersicht) nicht mag ist es schon garnicht mit OpenGL vergleichbar (Alleine schon wegen den Umfang, der bei weiten nicht nur Grafik, sondern auch Eingabegeräte etc. abdeckt - und gerade in den Bereichen jenseits von Grafik vermisse ich noch einheitliche Schnittstellen jenseits von DX).


Anmelden zum Antworten