10.11.2024, 17:52 UhrDeutsch | English
Hallo Gast [ Registrierung | Anmelden ]

Neues Thema eröffnen   Neue Antwort erstellen
Vorheriges Thema anzeigen Druckerfreundliche Version Einloggen, um private Nachrichten zu lesen Nächstes Thema anzeigen
Autor Nachricht
Dannyboy
Titel: Suche Crossplattform für C++  BeitragVerfasst am: 22.11.2006, 13:22 Uhr



Anmeldung: 30. Jun 2005
Beiträge: 449

Tach auch,
ich möchte in den kommenden Wochen einen Chat in C++ für meinen Verein schreiben, so dass sich die Mitglieder miteinander unterhalten können. Das Konzept steht soweit, bin also sowohl mit der Analyse- als auch mit der Designphase fertig und nun fehlt noch ein entscheidender Teil:
Da viele meiner Vereinsleute irrationalerweise Windows verwenden, benötige ich für C++ eine Crossplattform, so dass der Client für Linux und Windows kompiliert werden kann. Ich weiß nicht, ob das ohne weiteres möglich ist, da ich bisher entweder auf Linux oder damals leider für Windows programmiert habe. Vor allem im Bereich Threads und GUI, die ich beide benötige, gibt es ja essentielle Differenzen, daher bin ich natürlich auch bereit die eine oder andere Sourcecode-Zeile für Windows anzupassen. Mir wäre dennoch daran gelegen das Ding nicht zwei mal implementieren zu müssen.

Bevor die Frage kommt: Nein, Java kommt nicht in Frage, sondern nur C++. Smilie

Bin sicherlich nicht der Einzige mit dem Problem. Wäre über Anregungen sehr dankbar.

Greetz
DANNYBOY
 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
hey_ian
Titel: Re: Suche Crossplattform für C++  BeitragVerfasst am: 22.11.2006, 13:39 Uhr



Anmeldung: 22. Jan 2006
Beiträge: 448
Wohnort: Dresden
Dannyboy hat folgendes geschrieben::
Tach auch,
ich möchte in den kommenden Wochen einen Chat in C++ für meinen Verein schreiben, so dass sich die Mitglieder miteinander unterhalten können. Das Konzept steht soweit, bin also sowohl mit der Analyse- als auch mit der Designphase fertig und nun fehlt noch ein entscheidender Teil:
Da viele meiner Vereinsleute irrationalerweise Windows verwenden, benötige ich für C++ eine Crossplattform, so dass der Client für Linux und Windows kompiliert werden kann. Ich weiß nicht, ob das ohne weiteres möglich ist, da ich bisher entweder auf Linux oder damals leider für Windows programmiert habe. Vor allem im Bereich Threads und GUI, die ich beide benötige, gibt es ja essentielle Differenzen, daher bin ich natürlich auch bereit die eine oder andere Sourcecode-Zeile für Windows anzupassen. Mir wäre dennoch daran gelegen das Ding nicht zwei mal implementieren zu müssen.

Bevor die Frage kommt: Nein, Java kommt nicht in Frage, sondern nur C++. Smilie

Bin sicherlich nicht der Einzige mit dem Problem. Wäre über Anregungen sehr dankbar.

Greetz
DANNYBOY


Zuerst musste mir sagen in was du den Chat geschrieben hast. Oder haste ihn noch nit geschrieben, willst es aber in C++ tun? Nun ich empfehle dir Qt4 - es ist das ALLERBESTE was du fuer CrossCompiling auf MacOS X, WinDOS und Linux kriegen kannst. Qt kompiliert nativ, hat ein perfekte Dokumentation mit Beispielen zu jedem Punkt und passt sich auch an die native Umgebung von deinem System an. Der einzige Nachteil: Dein ChatClient muss OpenSource sein, da Qt nur dann zur freien verfuegung steht, wenn du das Prog GPL stellst, sonst musste fuer Qt bezahlen und des ist nit billig.

Andere GUI Toolkits sind z.B. GTK (nicht wirklich multiplattform) und wxWidgets. wxWidgets ist aber eher eine billige Alternative zu Qt, da die Syntax unuebersichtlich ist und die Dokumentation der reinste Schrott ist (weiss ich aus Erfahrung mit wxGTK 2.6).

Falls du Fragen hast bei der Einrichtung von Qt4, kann ich dir helfen. KDevelop kannste zum Entwickeln verwenden aber da musste a paar kleine Hacks machen.

_________________
Scanmetender[Soft] - Tender security solutions for your computer.
Scanmetender Standard - It is free! For GNU/Linux and Windows(R).
http://www.scanmetender.com
 
 Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen  
Antworten mit Zitat Nach oben
Georgy
Titel: RE: Re: Suche Crossplattform für C++  BeitragVerfasst am: 22.11.2006, 14:28 Uhr



Anmeldung: 01. Jan 2004
Beiträge: 1377
Wohnort: Schwabenländle
kleine frage von einem naiven, was ist an GTK nicht multiplattform?

es ist eben ein in C - geschriebenes GUI-toolkit. und eben auch nur das.
Keine speziellen threagins-sachen, also nicht so umfangreich wie Qt.
aber für "kleinere" dinge sollte das duchraus anwendbar sein.
Muss grade selber damit arbeiten, weil die anforderung der frau professor war, dass alles reines C sein muss!
Und da wir apple, windows und linux-entwickler (me) haben, war Gtk eigentlich das einzigste was mir dazu einfiel dass beide anforderungen erfüllt.

grüßchen
ich

_________________
Manche Menschen haben einen Horizont mit dem Radius null, das nennen sie dann ihren Standpunkt.

Die Realität ist nur der lanweiligste Teil des Vorstellbaren...

---- Freie Software für freie Bürger! ----
 
 Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer 
Antworten mit Zitat Nach oben
hey_ian
Titel: Re: RE: Re: Suche Crossplattform für C++  BeitragVerfasst am: 22.11.2006, 17:03 Uhr



Anmeldung: 22. Jan 2006
Beiträge: 448
Wohnort: Dresden
Georgy hat folgendes geschrieben::
kleine frage von einem naiven, was ist an GTK nicht multiplattform?

es ist eben ein in C - geschriebenes GUI-toolkit. und eben auch nur das.
Keine speziellen threagins-sachen, also nicht so umfangreich wie Qt.
aber für "kleinere" dinge sollte das duchraus anwendbar sein.
Muss grade selber damit arbeiten, weil die anforderung der frau professor war, dass alles reines C sein muss!
Und da wir apple, windows und linux-entwickler (me) haben, war Gtk eigentlich das einzigste was mir dazu einfiel dass beide anforderungen erfüllt.

grüßchen
ich


OK GTK multiplattformal zu benutzen ist moeglich. Es ist nur nicht so perfekt integriert wie Qt oder wxWidgets auf WinDOS. Ich kenne viele Unternehmen, die ihre Proggies multiplattform anbieten, die Linux Variante in GTK haben, doch wenns um die Windows Variante geht, greifen diese lieber zu der reinen WinAPI.
Schon allein die wohl groessten OpenSource GTK Projekte GIMP und GAIM sind die BESTEN Beispiele fuer die SCHLECHE Windows Integration von GTK. Ganz zu schweigen von den GTK+ Runtime Libraries, die fuer die Funktionalitaet benoetigt werden.
Das GTK nativ auf Mac OS X laueft ist mir neu. Ich dachte das geht wohl nur ueber den X Port von Mac OS X.

Warum verlangt den die Professorin reines C von dir? Es bietet keinerlei Vorteile zum modernen C++, dafuer aber viele Umstaende. Selbst GTK+ obwohl in C geschrieben, verwendet quasi Elemente von C++ in sich, wie z.B. Booleans und Classenaehnliche Elemente. Ganz zu schweigen von C++ Port fuer GTK

_________________
Scanmetender[Soft] - Tender security solutions for your computer.
Scanmetender Standard - It is free! For GNU/Linux and Windows(R).
http://www.scanmetender.com
 
 Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen  
Antworten mit Zitat Nach oben
Georgy
Titel: RE: Re: RE: Re: Suche Crossplattform für C++  BeitragVerfasst am: 23.11.2006, 20:55 Uhr



Anmeldung: 01. Jan 2004
Beiträge: 1377
Wohnort: Schwabenländle
"perfekt integriert" ist immer relativ.
Vor allem für ein C-toolkit in einer C++ welt.
Ja, gtk macht an einigen stellen sein eigenes ding, was es auf windows nicht so doll verwendbar macht.
jedoch ist ein teil davon einfach dadurch bedingt, dass sich GTK wietgehend auf die GUI-funktionalität beschränkt. Und beispielsweise weder threading noch datenbank-anbindung o.ä. von hause aus anbietet so wie Qt das tut. Derlei dinge wirklich plattformunabhängig zu halten ist n anderes ding.

Und die meisten windows-programimerer die ich kenne verwenden winapi nicht weil es nicht anders geht, sondern weil sie an visual studio gewöhnt sind. *lol*

C ist bei uns einfach in der Prüfungsordnung enthalten. wir werden in C geprüft, also wir innerhalb des semesters auch nur mit C gearbeitet. So ist die offizielle begründung.
Der einzige vorteil den man C normalerweise gegenüber c++ bescheinigt ist portierbarkeit.
Und auch wenn gtk solche elemente definiert, und quasi eine kalssenstruktur nachbildet, so ist es trotzdem alles plain C implementiert.
Was z.b. darin resultiert dass man nicht meber-weise gewisse attribute eines objekts setzen kann, sondern nur per extra function-call dem das zu manipulierende objekt als parameter übergeben wird.
Zudem braucht man an an allen stellen casts weil C natürlich keine vererbung kennt und daher manche bezüge nicht auflösen kann.

übrigens kommen ein teil der schlechten integration von gtk-progs auf windows auch von diversen gnome-typischen implementationen oder zumindest welchen die gnome, X oder unix-artige schnittstellen für irgendwas voraussetzen.

nunja... jedenfalls ist vorgabe plain C. Also kan nich beim besten willen kein Qt nehmen. Wär mir auch lieber.

grüßchen
ich

_________________
Manche Menschen haben einen Horizont mit dem Radius null, das nennen sie dann ihren Standpunkt.

Die Realität ist nur der lanweiligste Teil des Vorstellbaren...

---- Freie Software für freie Bürger! ----
 
 Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer 
Antworten mit Zitat Nach oben
hey_ian
Titel: Re: RE: Re: RE: Re: Suche Crossplattform für C++  BeitragVerfasst am: 27.11.2006, 21:13 Uhr



Anmeldung: 22. Jan 2006
Beiträge: 448
Wohnort: Dresden
Georgy hat folgendes geschrieben::

Und die meisten windows-programimerer die ich kenne verwenden winapi nicht weil es nicht anders geht, sondern weil sie an visual studio gewöhnt sind. *lol*

Tja Visual Studio beyieht sich heute mehr auf .NET, frueher bis auf MFC, WinAPI ist da die Ausnahme. Aber es hindert nichts dran auch Qt, GTK oder wxWidgets mit MS Visual Studio zu verwenden. Ich hab das mit den wxWidgets bei mir auf WinDOS hingekriegt, war aber nicht leicht. Musstu die Bibliotheken aus der Source compilen. Winken

Georgy hat folgendes geschrieben::

Der einzige vorteil den man C normalerweise gegenüber c++ bescheinigt ist portierbarkeit.

Oh ja, dieses gequatsche von besserer Portierbarkeit kenne ich auch. Aber ich denke du wuerdest mir zustimmen wenn ich sage das dies heute nicht mehr gilt. Ich kenne eine einzige Prozessorarchitektur oder ein OS, welches keinen C++ Compiler hat. Der GCC ist ja auch für fast alle Architekturen und OS verfuegbar.
Diese Aussage könnte in den 80ern und Anfang 90er gültig gewesen sein, da gab es noch nicht einmal Standards für C++, aber jetzt ist C++ genauso portierbar wie C.

_________________
Scanmetender[Soft] - Tender security solutions for your computer.
Scanmetender Standard - It is free! For GNU/Linux and Windows(R).
http://www.scanmetender.com
 
 Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen  
Antworten mit Zitat Nach oben
Georgy
Titel: RE: Re: RE: Re: RE: Re: Suche Crossplattform für C++  BeitragVerfasst am: 04.12.2006, 15:39 Uhr



Anmeldung: 01. Jan 2004
Beiträge: 1377
Wohnort: Schwabenländle
die sprache selber schon, nur die libs nicht undbedingt. da spielt sehr schenll sehr viel plattformspezifisches mit rein. mit Qt geht vieles, ohne frage... naja... auch egal. jeder wie ers nimmt.
ich häte auch leiber mit Qt in dem projekt gecodet, aber so muss GTK halt reichen.

_________________
Manche Menschen haben einen Horizont mit dem Radius null, das nennen sie dann ihren Standpunkt.

Die Realität ist nur der lanweiligste Teil des Vorstellbaren...

---- Freie Software für freie Bürger! ----
 
 Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer 
Antworten mit Zitat Nach oben
Beiträge vom vorherigen Thema anzeigen:     
Gehe zu:  
Alle Zeiten sind GMT + 1 Stunde
Neues Thema eröffnen   Neue Antwort erstellen
Vorheriges Thema anzeigen Druckerfreundliche Version Einloggen, um private Nachrichten zu lesen Nächstes Thema anzeigen
PNphpBB2 © 2003-2007 
 
Deutsch | English
Logos and trademarks are the property of their respective owners, comments are property of their posters, the rest is © 2004 - 2006 by Jörg Schirottke (Kano).
Consult Impressum and Legal Terms for details. Kanotix is Free Software released under the GNU/GPL license.
This CMS is powered by PostNuke, all themes used at this site are released under the GNU/GPL license. designed and hosted by w3you. Our web server is running on Kanotix64-2006.