Eine eigene GUI
-
trooper schrieb:
Verwendest du eine Plattform unabhängige GUI,....
Und das ist QT?
Ich möchte aber keinen Quelltext veröffentlichen. Mmmh...prüft das denn irgendjemand nach oder wird an die Moral apelliert? Sonst kauf ich mir die Lizenz, wenn die nicht wieder irre teuer ist.
edit: Danke ipsec, das wollte ich hören :D. Hat aber l'abra d'or auch schon gemeint.
edit edit: Und trooper auch...
lg, freakC++
-
freakC++ schrieb:
Ich möchte aber keinen Quelltext veröffentlichen. Mmmh...prüft das denn irgendjemand nach oder wird an die Moral apelliert? Sonst kauf ich mir die Lizenz, wenn die nicht wieder irre teuer ist.
Wenn du anfängst das Programm (erfolgreich) zu verkaufen, wird das jemand prüfen. Ja.
Wenn du das Programm nur so veröffentlichst, ohne den Sourcecode rauszugeben, hält man dich bloß für einen komischen, unsozialen Kauz der seine Viren verstecken will und keiner nutzt dein Programm.
-
trooper schrieb:
Klar kann man mittels QT erstelle Programme kommerziell verwenden, nur muss man sich dann im klaren sein, dass man die Sourcecodes veröffentlichen muss!
Das würde dem Sinn der LGPL wiedersprechen.
-
Also ich glaub kaum dass es sich für dich lohnt jetzt schon die kommerzielle Version zu kaufen, entwickle lieber erst mal ein Programm dass überhaupt jemand kaufen würd, kannst dir dann ja immer noch die kommerzielle Version kaufen;-).
http://de.wikipedia.org/wiki/LGPL
Linkst du also dynamisch, kann dein Programm unter einer beliebigen Lizenz stehen, linkst du statisch, dann steht deine Anwendung automatisch auch unter der LGPL, was für einen "richtigen Verkauf" nicht so vorteilhaft ist.Änderungen an Qt selbst musst du veröffentlichen.
Alle Freiheiten haste dann halt mit der kommerziellen Version.
Falls du dich für die WIN-API entscheiden solltest, kann ich die das Buch Windows-Programmierung von Charles Petzold empfehlen.
Wie hier schon mehrmals gesagt wurde, kann man dir nicht einfach was empfehlen.
Müsstest du auch gesehen haben,wenn du die Suche benutzt hättest und dir andere Threads zu diesem Thema angeschaut hättest.
Du musst einfach schauen was dir am Besten gefällt, und das geht am einfachsten in dem du ausprobierst;-)Lg freeG
-
fr33g schrieb:
Linkst du also dynamisch, kann dein Programm unter einer beliebigen Lizenz stehen, linkst du statisch, dann steht deine Anwendung automatisch auch unter der LGPL,...
Die LGPL-Lizenz von QT (übrigens um kleine Klarstellungen seitens Nokias ergänzt, wegen Templates) erlaubt nur ein dynamisches Linken (+ Verwendung der Header, die für den Betrieb nötig sind [Templates]).
Ich seh darin auch keinen Nachteil, solange man nicht in den QT-Code eingreifen will (und da macht die Linzenz durchaus einen Unterschied.
-
@l'abra d'or und @ipsec und @asc
Ach Leute!. Lest doch bitte den Post ganz bis zum Ende. Da steht doch was es für Lizenzen für QT so gibt.
Ich hatte nicht geschrieben welche Sourcen man veröffentlichen muss (die des eigenen Programms oder die der veränderten GUI). Die LGPL gib es freilich auch, jedoch muss man da auch die Sourcecodes veröffentlichen, wenn man nicht dynamisch linkt oder die GUI selbst anfasst und bei statischem Linken unter die LGPL oder GPL stellen.Also bei mir kam es schon öfter vor, dass ich irgendwelche Funktionen der GUI (Treebrowser, Dateibrowser etc.) an meine Vorstellungen anpassen musste. Dann bleibt einem irgendwann nichts anderes übrig als die GUI zu erweitern und schon muss man die Sourcecodes (der erweiterten GUI) mit veröffentlichen.
Ne, ne die LGPL ist für kleine Projekte ganz brauchbar aber eben auch nicht immer das Gelbe vom Ei. Und der Zwang zum dynamischen Linken ist auch nicht so ohne.
Vollkommen frei ist man nur wenn man die kommerzielle Lizenz verwendet und die kostet nun mal Geld.
-
trooper schrieb:
@l'abra d'or und @ipsec und @asc
Ach Leute!. Lest doch bitte den Post ganz bis zum Ende. Da steht doch was es für Lizenzen für QT so gibt.
Ich hab den Post bis zum Ende gelesen. Die Lizenzformen hast du aber erst ca. eine Minute nach meiner Antwort reineditiert.
-
Es stand trotzdem vorher da das Sourcecodes veröffentlicht werden müssen.
Welche das sind ist erstmal völlig belanglos dabei, denn bei der LGPL müssen auch Sourcecodes veröffentlicht werden, nur eben die der veränderten GUI und nicht die eigenen.Aber ist gut wenn man vorschnell Texte interpretiert...
PS: Deine Antwort war zudem noch nicht da.
-
trooper schrieb:
Ach Leute!. Lest doch bitte den Post ganz bis zum Ende. Da steht doch was es für Lizenzen für QT so gibt.
Fakt ist jedenfalls das man QT ohne Probleme im Kommerziellen Umfeld, auch mit der LGPL-Lizenz verwenden kann, ohne den eigenen Code zu veröffentlichen.
Dennoch betonst du ständig das Veröffentlichen von eigenen Code unter der LGPL, diese explizite Betonung ist aber mehr als irreführend, selbst wenn du diese Aussage auf das statische Linken beschränkst - zumal du auch an mehreren Stellen wegen der Veröffentlichung einen Aufstand betreibst.
-
@trooper
Willst du jetzt wirklich diskuttieren, wer wann was geschrieben hat? Aber bitte...trooper schrieb:
Es stand trotzdem vorher da das Sourcecodes veröffentlicht werden müssen.
Welche das sind ist erstmal völlig belanglos dabei, denn bei der LGPL müssen auch Sourcecodes veröffentlicht werden, nur eben die der veränderten GUI und nicht die eigenen.trooper schrieb:
Klar kann man mittels QT erstelle Programme kommerziell verwenden, nur muss man sich dann im klaren sein, dass man die Sourcecodes veröffentlichen muss!
Es ist natürlich intuitiv sofort ersichtlich, dass du nicht die Sourcecodes des eigenen Programms meinst, sondern die von Qt. Btw: hat irgendjemand was gesagt, dass man die Qt-Sourcen verändern will?
Deine Aussage erweckte vielmehr den Eindruck, dass jedes kommerzielle Programm auf Basis von Qt open-source sein muss. Und da da früher tatsächlich so war, nahm ich an, dass du einfach noch nicht auf dem aktuellen Stand bist. Um Verwirrungen des TE zu vermeiden, habe ich die Aussage versucht richtig zu stellen.trooper schrieb:
PS: Deine Antwort war zudem noch nicht da.
trooper schrieb:
Zuletzt bearbeitet von trooper am 10:53:53 04.08.2010, insgesamt 1-mal bearbeitet
ipsec schrieb:
10:52:44 04.08.2010 Titel:
-
asc schrieb:
Die LGPL-Lizenz von QT (übrigens um kleine Klarstellungen seitens Nokias ergänzt, wegen Templates) erlaubt nur ein dynamisches Linken (+ Verwendung der Header, die für den Betrieb nötig sind [Templates]).
Ist so ne Sache. Eigentlich steht im Lizenztext nicht drinnen, dass dynamisch linken zwingend ist. Es muss nur dem Anwender möglich sein, die mitgelieferte Version von Qt gegen eine andere auszutauschen. Eine weitere Möglichkeit, um das zu erreichen, ist statisches Linken + Mitliefern der objectfiles. Mit denen kann man dann die Applikation mit einer anderen Lib wieder zusammenlinken.
trooper schrieb:
Welche das sind ist erstmal völlig belanglos dabei, denn bei der LGPL müssen auch Sourcecodes veröffentlicht werden, nur eben die der veränderten GUI und nicht die eigenen.
Was sind "die der veränderten GUI"?
trooper schrieb:
Also bei mir kam es schon öfter vor, dass ich irgendwelche Funktionen der GUI (Treebrowser, Dateibrowser etc.) an meine Vorstellungen anpassen musste. Dann bleibt einem irgendwann nichts anderes übrig als die GUI zu erweitern und schon muss man die Sourcecodes (der erweiterten GUI) mit veröffentlichen.
Oi, ich musste das noch nie! Was sind das für Änderungen, die nur mit Eingriff in die Qt-Sourcen zu bewerkstelligen sind? Schau dir mal an, was z.B. alles an genialen kde-Programmen rumkreucht, die mussten noch nie (!!!!) die qt-libs patchen. Ich bin mal gespannt auf deine Änderungswünsche. Hast du schon Featurerequests bei Nokia bageliefert?
-
Werkst du nicht wie lächerlich das ist die Zeiten hinzuschreiben (Ganze 51 Sekunden später - oh mein Gott
)
Das ist kein Live-Chat hier sondern ein Forum.
Als ich meinen Text schrieb war dein Text definitiv noch nicht im meinem Computer nachgeladen bzw. irgendwo bei mir sichtbar.
Aber zur Entschuldigung. Mein Computer ist wohl zu langsam oder das Internet.
Antworte doch lieber auf die gestellten Fragen als auf den gegebenen Antworten rumzuhacken, denn das Hilft dem Fragesteller und vergrellt nicht die Antwortenden.
Viele Grüße
Trooper
-
Ich bin nun etwas verwirrt, ich habe das mit Qt bis jetzt so verstanden dass ich Closed Source entwickeln kann und auch die Software kommerziell vertreiben darf ohne auch nur einen Cent Lizenzgebühr an Nokia/Trolltech zahlen zu müssen, wenn ich dynamisch linke. Ist das so richtig?
G hibbes
-
Nachtrag: (damit ich nicht ein paar Sekunden später editieren muss
)
@l'abra d'or
Das mit den Objektfiles mitgeben hab ich noch nie gehört, dass es schon irgendwo so gemacht wurde. Wäre aber durchaus denkbar.Ich habe auch nicht von explizit von QT gesprochen, denn ich verwende FLTK. Aber selbst bei QT könnte ich mir denken, dass du für bestimmte Spezialanwendungen die GUI abändern musst.
Beispiele:
- Ich möchte im Dateibrowser eine Objektvorschau von 3D-Objekten haben.
- Der Treebrowser soll zum übrigen Programmdesign passend sein.
- Die Listendarstellung soll scrollbar sein mit Icons.
Und weil es bei Dir noch nie vor kam, heißt das noch lange nicht, dass es nie vorkommen muss. Gerade bei FLTK gibt es viele Funktionen eben nicht von Hause aus. QT ist mit Sicherheit mächtiger. Aber spätestens wenn dein Kunde irgend so eine fixe Designidee hat, weist du was ich meine.
@hibbes
Ja das ist richtig so.
-
trooper schrieb:
Werkst du nicht wie lächerlich das ist die Zeiten hinzuschreiben (Ganze 51 Sekunden später - oh mein Gott
)
Aber es ist später und nicht früher...
Antworte doch lieber auf die gestellten Fragen als auf den gegebenen Antworten rumzuhacken, denn das Hilft dem Fragesteller und vergrellt nicht die Antwortenden.
Ebenso
l'abra d'or schrieb:
Was sind das für Änderungen, die nur mit Eingriff in die Qt-Sourcen zu bewerkstelligen sind?
// edit:
Ok, ich hätte nicht Korrekturlesen sollen, jetzt war ich klar nach deinem Beitrag
-
hibbes schrieb:
Ich bin nun etwas verwirrt, ich habe das mit Qt bis jetzt so verstanden dass ich Closed Source entwickeln kann und auch die Software kommerziell vertreiben darf ohne auch nur einen Cent Lizenzgebühr an Nokia/Trolltech zahlen zu müssen, wenn ich dynamisch linke. Ist das so richtig?
Ja, mit der Ergänzung von l'abra d'or, das vielleicht auch statisches Linken möglich ist (Ich erinnere mich bei meiner Recherche, aber das mit dem dynamischen Linken bei einer Klarstellung von Nokia im QT-Forum gelesen zu hanben). Mit dynamischen Linken solltest du auf jedenfall sicher sein.
Fakt ist jedenfalls das du QT in der LGPL-Version (ohne Lizenzkosten) auch in Closed Source Projekten einsetzen kann. Da ich mich aber nur sehr am Rande mit QT beschäftigt habe, kann ich dir nicht die exakten Definitionen nennen (ich glaube mich z.B. auch an daran das QT-Templates nicht mehr als 5% des Codes ausmachen sollten - was imho eh nicht problematisch sein sollte).
-
trooper schrieb:
[*]Ich möchte im Dateibrowser eine Objektvorschau von 3D-Objekten haben.
Installiere einen entsprechenden Thumbnailer mit deiner Anwendung mit (so wird es MS Office/OpenOffice/Acrobat auch machen, um die Dokumente im Vorschaukasten anzuzeigen).
Beim QFileDialog hast du aber eher Probleme, denn manche Styles hooken sich hier ein und zeigen einen plattformeigenen FileDialog, dann bist du mit deinen Qt-Sourceänderungen wieder am Ende[*]Der Treebrowser soll zum übrigen Programmdesign passend sein.
Schreib einen eigenen QItemDelegate/QStyle
[*]Die Listendarstellung soll scrollbar sein mit Icons.
Eine Listendarstellung ist Scrollbar, und man kann es ganz einfach so einstellen, dass nur Icons angezeigt werden.
-
@l'abra d'or
Das wären evtl. Möglichkeiten für QT und nun das ganze für FLTK bitte...Sei doch nicht so starrköpfig. Auch mit QT geht nicht alles. QT ist mächtig keine Frage, aber auch da gibt es Grenzen. Genausogut könnte ein Fehler in QT selbst die Ursache sein, dass man den QT Quellcode anfassen muss.
-
Wow..hier hat sich eine richtige Diskussion entwickelt. Es war interessant alles durchzulesen. Lizenz hin oder her - ich werde mir zuerst Qt anschauen.
Vielen Dank
lg, freakC++
-
trooper schrieb:
@l'abra d'or
Das wären evtl. Möglichkeiten für QT und nun das ganze für FLTK bitte...Mit FLTK kommt man da nicht wirklich in Probleme, denn die Lizenz erlaubt statisches Linken, man darf dabei auch den Sourcecode ändern, muss aber die Änderungen unter der LGPL veröffentlichen:
Static linking of applications and widgets to the FLTK library does not constitute a derivative work and does not require the author to provide source code for the application or widget, use the shared FLTK libraries, or link their applications or widgets against a user-supplied version of FLTK.
If you link the application or widget to a modified version of FLTK, then the changes to FLTK must be provided under the terms of the LGPL in sections 1, 2, and 4.
Mit FLTK kenn ich mich aber nicht aus, drum ann ich dir da auch nicht sagen wie es geht.
Sei doch nicht so starrköpfig. Auch mit QT geht nicht alles. QT ist mächtig keine Frage, aber auch da gibt es Grenzen. Genausogut könnte ein Fehler in QT selbst die Ursache sein, dass man den QT Quellcode anfassen muss.
Starrköpfig? Mag sein, allerdings reagiere ich doch nur auf deine (wieder bekräftigte) Aussage, dass es eine Notwendigkeit ist, den Qt-Sourcecode zu verändern. Deine aktuelle Relativierung: Fehler in Qt. -> Bugreport! Patch veröffentlichung. Wenn es ein tatsächlich relevanter Fehler ist, wird der schnell in den Linuxdistributionen eingespielt und im nächsten Patchrelease von Qt enthalten sein.
Aber wenn es dich so stört, dass statisches Linken + Änderungen am Sourcecode von Qt sooo kompliziert ist: Verzichte auf statisches Linken, liefere deine modifizierte Library mit, samt Patches, und sag "Mein Programm funktioniert nur mit diesen und jenen Patches an Qt". Aber irgendwo geht das doch komplett an der Fragestellung vorbei. Ich denke es ist allen klar, worauf man sich bei der LGPL + kommerzielle Nutzung einlässt - man kann seinen Code verheimlichen, muss aber bestimmte Einschränkungen akzeptieren, egal wie sinnvoll diese einem erscheinen.