 |
| |
|
|
 |
Autor |
Nachricht |
 |
| |
| EConvertError |
#1| Verfasst am: 05.02.2010, 21:08 Titel: Qt/C++: Objektorientierte DLLs und das plattformübergreifend |
 |
 |
 |
|
Mitglied Alter: 21 Status: offline Beiträge: 235 angemeldet: 29.09.2003 Wohnort: Österreich

|
Hallo!
Habe wieder eine Frage, die sich auf C++ mit Qt bezieht - ich hoffe, ihr könnt mir dennoch helfen.
Ich möchte einige Klassen (von QObject abgeleitet) in externe Bibliotheken auslagern und diese dann in versch. Programmen verwenden. Das Ganze soll noch plattformübergreifend sein (also kein COM, soll auch auf Linux/Mac laufen), da sonst der Vorteil von Qt verloren geht.
Der Grund, weshalb ich das hier in einem Delphi-Forum frage: Sollte es nicht (ohne weiteres) möglich sein, wird das Projekt in Delphi ausgeführt, da ich dann auf die Plattformunabhängigkeit verzichte.
Vielen Dank,
Andreas |
|
 |
|
|
|
| |
| Astat |
#2| Verfasst am: 05.02.2010, 21:15 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
sehr aktives Mitglied Alter: 27 Status: offline Beiträge: 300 angemeldet: 02.12.2009 Wohnort: München Lazarus

|
Hallo EConvertError, sollte doch mit FPC ohne Probleme möglich sein.
http://wiki.freepascal.org/FPC_and_Qt
lg. Astat |
 068101108112104105032105115116032097110032100101109032084097103
032116111116044032097110032100101109032100105101032108101116122
116101032090101105108101032067111100101032105110032068101108112
104105032103101115099104114105101098101110032119105114100046 |
 |
|
|
|
| |
| EConvertError |
#3| Verfasst am: 05.02.2010, 21:25 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
Mitglied Alter: 21 Status: offline Beiträge: 235 angemeldet: 29.09.2003 Wohnort: Österreich

|
Vielen Dank für deine Antwort!
Das steht aus verschieden Gründen nicht zur Diskussion. Das Projekt wird entweder in C#/Oxygene (Chrome)/WPF realisiert, oder in C++.
Daher ist für mich entscheidend, wie ich gemeinsame Klassen in C++/Qt für mehrere Programme anbieten kann. Das ist selbstverständlich nicht der einzige Aspekt bei der Entscheidung...
lg,
Andreas |
|
 |
|
|
|
| |
| Assertor |
#4| Verfasst am: 05.02.2010, 21:31 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
aktives Mitglied Alter: 31 Beiträge: 1.181 angemeldet: 04.02.2006 Wohnort: Hamburg RAD-Studio 2010 Arc

|
Hi EConvertError,
wenn Du den Projektmanager überzeugen kannst: Geduld haben, vielleicht kann man statt C++/QT irgenwann Delphi für Cross-Compilation nutzen...
Laut Allen Bauer ist da ja seit Mitte 2009 was in der Pipeline:
http://blogs.embarcadero.com/abauer/2009/05/20/38885
Natürlich kann man noch nicht sagen, ob und wann da was nutzbares bei rauskommt - aber klingt imo doch interessant...
Gruß,
Assertor
Edits: Typos und Gestammel korrigiert |
 Assertor Delphi Blog (englisch)
Embarcadero Technology Partner
Indy Mercury & Core Team // Indy OpenSSL Maintainer
Zuletzt bearbeitet von Assertor am 05.02.2010, 21:48, insgesamt 3-mal bearbeitet. |
 |
|
|
|
| |
| mkinzler |
#5| Verfasst am: 05.02.2010, 21:35 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
Moderator Beiträge: 27.697 angemeldet: 09.12.2005 Wohnort: Heilbronn Delphi 2010 Professional

|
Konnte man doch schon einmal (clx) |
|
 |
|
|
|
| |
| Assertor |
#6| Verfasst am: 05.02.2010, 21:37 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
aktives Mitglied Alter: 31 Beiträge: 1.181 angemeldet: 04.02.2006 Wohnort: Hamburg RAD-Studio 2010 Arc

|
Hi,
| mkinzler hat folgendes geschrieben: | | Konnte man doch schon einmal (clx) |
Richtig, aber wer würde clx heute auskramen für ein neues Projekt? Und das dann sogar produktiv einsetzen...
Gruß,
Assertor |
 Assertor Delphi Blog (englisch)
Embarcadero Technology Partner
Indy Mercury & Core Team // Indy OpenSSL Maintainer |
 |
|
|
|
| |
| Astat |
#7| Verfasst am: 05.02.2010, 22:58 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
sehr aktives Mitglied Alter: 27 Status: offline Beiträge: 300 angemeldet: 02.12.2009 Wohnort: München Lazarus

|
| EConvertError hat folgendes geschrieben: | Vielen Dank für deine Antwort!
Das steht aus verschieden Gründen nicht zur Diskussion. Das Projekt wird entweder in C#/Oxygene (Chrome)/WPF realisiert, oder in C++.
|
Hallo EConvertError, mit C#/Oxygene (Chrome)/WPF oder C++, hast du die gleichen Probleme.
Als einzige Möglichkeit sehe ich ANSI C, sonst gibts irgendwo und irgendwann sowieso Probleme.
lg. Astat |
 068101108112104105032105115116032097110032100101109032084097103
032116111116044032097110032100101109032100105101032108101116122
116101032090101105108101032067111100101032105110032068101108112
104105032103101115099104114105101098101110032119105114100046 |
 |
|
|
|
| |
| EConvertError |
#8| Verfasst am: 08.02.2010, 16:56 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
Mitglied Alter: 21 Status: offline Beiträge: 235 angemeldet: 29.09.2003 Wohnort: Österreich

|
Hallo!
Cross-Compilation und Delphi für Win32 kommt auf keinen Fall in Frage. Wenn man sich ansieht, wie lange schon ein 64-bit-Compiler versprochen wird, weiß man warum.
Das Programm soll auf einer soliden und zukunftsträchtigen Architektur aufbauen und daher stehen C++/Qt oder Oxygene/C#/WPF zur Diskussion. Wir fragen uns allerdings, ob man mit C++/Qt wirklich so einfach plattformunabhängigen Code schreiben kann. Wichtig unter anderem ist die Frage, ob man objektorientierte DLLs/shared libraries verwenden kann... Gerade wenn man dazu COM oder sowas verwenden müsste, hätten wir keine Plattformunabhängigkeit mehr.
Es wird im übrigen ein wissenschaftliches Projekt, wichtig ist "Scientific Computing", Graphikprogrammierung (vorerst 2D, später auch 3D).
Daher würde mich eine genauere Erläuterung deiner Antwort interessieren, Astat. Qt wird doch als plattformunabh. Lösung angepriesen, warum also werde ich da auf die gleichen Probleme stoßen?
Danke,
Andreas |
|
 |
|
|
|
| |
| Astat |
#9| Verfasst am: 08.02.2010, 23:52 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
sehr aktives Mitglied Alter: 27 Status: offline Beiträge: 300 angemeldet: 02.12.2009 Wohnort: München Lazarus

|
| EConvertError hat folgendes geschrieben: |
.. ob man mit C++/Qt wirklich so einfach plattformunabhängigen Code schreiben kann. Wichtig .. ist .. ob man objektorientierte DLLs/shared libraries verwenden kann... Gerade wenn man dazu COM oder sowas verwenden müsste, hätten wir keine Plattformunabhängigkeit mehr.
..Qt wird doch als plattformunabh. Lösung angepriesen, warum also werde ich da auf die gleichen Probleme stoßen?
|
Hallo EConvertError, nicht bei Qt, sondern bei C++, C# entstehen Probleme bei der Plattform unabhängigkeit.
C++ Objekte können nicht ohne weiteres in anderen Sprachen verwendet werden.
Auch gibt es unterschiedliche C++ Dialekte. Desshalb meinte ich, dass alle öffentlichen Schnittstellen ANSI-C sein sollten.
Selbst Qt-Programmierung hat eigentlich nichts mehr mit C++ zu tun, da die gesammte Implementation auf C-Makros
aufgebaut ist. Da entstehen zwangsläufig Problemem im Namespaces, auch sind diese nicht typsicher.
Also wenn es um Platform unabhängigkeit geht, dann "Innen" Qt aussen "ANSI-C"
In welcher Sprache dann die Qt- Container sind, ist dann Nebensache.
lg. Astat |
 068101108112104105032105115116032097110032100101109032084097103
032116111116044032097110032100101109032100105101032108101116122
116101032090101105108101032067111100101032105110032068101108112
104105032103101115099104114105101098101110032119105114100046 |
 |
|
|
|
| |
| EConvertError |
#10| Verfasst am: 10.02.2010, 12:24 Titel: Re: Qt/C++: Objektorientierte DLLs und das plattformübergrei |
 |
 |
 |
|
Mitglied Alter: 21 Status: offline Beiträge: 235 angemeldet: 29.09.2003 Wohnort: Österreich

|
Ich möchte anmerken, dass die Anforderung an öffentliche Schnittstellen nicht ist, dass JEDER in JEDER Sprache darauf zugreifen kann. Ich würde ohnehin nur Qt mit C++ verwenden.
Aber ich verstehe das Problem und danke für die Hilfe!
lg,
Andreas |
|
 |
|
|
|
 |
|
 |
| |
|
|
| |
 
|
|
| |
|
Du darfst keine Beiträge in dieses Forum schreiben. Du darfst auf Beiträge in diesem Forum nicht antworten. Du darfst Deine Beiträge in diesem Forum nicht bearbeiten. Du darfst Deine Beiträge in diesem Forum nicht löschen. Du darfst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten. Du kannst Dateien in diesem Forum nicht herunterladen.
|
|
 |