Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Faule Socke

Community-Fossil

Beiträge: 1 915

Wohnort: Schreibtischstuhl

  • Private Nachricht senden

31

09.12.2008, 19:16

Ich mag Qt auch nicht wegen dem Precompiler und wegen dem ganzen Style. Da benutze ich lieber noch GTK+, auch wenns nur C ist. wxWidgets gefällt mir nicht hundertporzentig, das mit den Makros finde ich nicht so schön und ja das Argument mit den Namespaces stimmt auch, die hätten das ruhig verpacken können. Allgemein gefällt sie mir aber recht gut, es gibt ja glaube auch recht viele Erweiterungen, die bei Editoren sehr nützlich sind. Die Lizenzgeschichte von Qt gefällt mir auch nicht, die zlib Lizenz finde ich ganz nett, gibt aber mit sicherheit noch bessere.

Wie gesagt: gtkmm oder wxWidgets finde ich nicht schlecht. MFC hab ich mich mal mit befasst, ist gar nicht so schlecht wie alle sagen, nur leider hat ms mal wieder alles selber gecoded (listen etc etc...). Habs aber noch nie wirklich benutzt.

Socke

kiba

Alter Hase

  • »kiba« ist der Autor dieses Themas

Beiträge: 327

Wohnort: NRW

Beruf: Azubi: Fach-Info. Anw.

  • Private Nachricht senden

32

17.12.2008, 10:07

Hiho, hätte noch ein fragen zu diesen Thema.
Da ein Dynamisch lib von system zu system anders ist muss man diesen
dann in jeden system neu kompilieren.
Heißt das ich muss mir dann extra Linux(z.b. Ubuntu) install.
und das programm neu kompilieren.
oder geht das viel einfacher.

Beneroth

Alter Hase

Beiträge: 969

Wohnort: Schweiz

Beruf: Software Entwickler

  • Private Nachricht senden

33

17.12.2008, 10:26

3 Möglichkeiten:

o Cross-Compiler
o Virtualisierung(z.B: VMWare)
o Zweitinstallation

kiba

Alter Hase

  • »kiba« ist der Autor dieses Themas

Beiträge: 327

Wohnort: NRW

Beruf: Azubi: Fach-Info. Anw.

  • Private Nachricht senden

34

17.12.2008, 10:42

1.
Bei den cross-compiler wie z.b. gnu-compiler
erstellt der doch bei verschiednen system verschiden dynamisch libs
wie z.b. *.dll,*.so...
Welchen sinn hat das dann oder verstehe ich da was falsch.

2.Bei Linux gibt es ja verschieden system wie z.b. ubuntu,knoppix,opensuse,...
Braucht ich da nur 1 version?

3. Da nehme ich lieber das 2. ^^

35

17.12.2008, 11:12

Das liegt daran, dass verschiedene Plattformen verschiedene dynamische libs brauchen. Genauso wie man eine ausführbare Windows-Datei auch nicht unter Linux ausführen kann.
Der Sinn eines Cross-Compilers ist es unter Windows auch .SO erstellen zu können. Dann kannst du eine Windows und eine Linuxversion anbieten ohne selbst beide Betriebssysteme auf deinem Rechner zu haben.
Mit Virtualisierung meint Beneroth wahrscheinlich, dass man eben diesen virtuellen PC nutzt um darauf einen Compiler zu installieren, aber das ist sehr umständlich. Einfacher wäre der Cross-Compiler. Der macht das gleiche ohne sich mit verschiedenen Betriebssystemen herumschlagen zu müssen.

Die einzige Möglichkeit, dass dein Programm mit den selben Dateien unter mehreren Betriebssystemen läuft, ist ein Framework (.net bzw. Java) zu nutzen. Mit .net habe ich mich selbst noch nicht befasst und Java ist meiner Meinung nach immernoch schlechter als mehrere Versionen für verschiedene Betriebssysteme anzubieten.

kiba

Alter Hase

  • »kiba« ist der Autor dieses Themas

Beiträge: 327

Wohnort: NRW

Beruf: Azubi: Fach-Info. Anw.

  • Private Nachricht senden

36

17.12.2008, 11:44

Und wie soll ich mit den Kompieler verschieden Libs erstellen.
Ich benutzt Code::Blocks und bei Projekt kann ich Dynamisch Library auswählen erstellt wird aber nur für Windows.

Beneroth

Alter Hase

Beiträge: 969

Wohnort: Schweiz

Beruf: Software Entwickler

  • Private Nachricht senden

37

17.12.2008, 11:45

Zitat von »"Genion"«

Die einzige Möglichkeit, dass dein Programm mit den selben Dateien unter mehreren Betriebssystemen läuft, ist ein Framework (.net bzw. Java) zu nutzen. Mit .net habe ich mich selbst noch nicht befasst und Java ist meiner Meinung nach immernoch schlechter als mehrere Versionen für verschiedene Betriebssysteme anzubieten.


Diverse C/C++-Libraries / - Frameworks unterstützen mehrere Platformen, musst du einfach darauf achten wenn du eine auswählst.

38

17.12.2008, 11:50

Dass die mehrere Plattformen unterstützen heißt aber nicht, dass man sie nicht für mehrere Plattformen kompilieren muss. Man braucht dennoch eine .dll für Windows und eine .so für Linux (was nicht was MacOS da hat)

39

17.12.2008, 12:34

Zitat von »"kiba"«


2.Bei Linux gibt es ja verschieden system wie z.b. ubuntu,knoppix,opensuse,...
Braucht ich da nur 1 version?

Ein bisschen aufpassen muss man da schon, ich hab z.B. mal gehört, dass ein unter Ubuntu kompiliertes Programm nicht auf einem Debian lief, weil das per Philosophie nur stabile, und damit etwas ältere Pakete hat.
Und wenn du z.B. KDE benutzt muss eine Gnome User sich erst die ganzen KDE Pakete hohlen.
Lieber dumm fragen, als dumm bleiben!

Beneroth

Alter Hase

Beiträge: 969

Wohnort: Schweiz

Beruf: Software Entwickler

  • Private Nachricht senden

40

17.12.2008, 12:36

das ist bei Java und .Net auch so!

Bei denen wird einfach davon ausgegangen dass jeweils die dlls und zusatz-dateien bereits installiert sind im System.

Bei Linux wird normalerweise dass auch mit allen libraries gemacht, z.B. auch SDL. Unter Windows liefert jeder meistens immer alles mit weil in Windows bis vor .Net die dlls nie brauchbar organisiert wurden (stichwort dll-hell).

Linux-Binaries laufen meistens auf alle Linux-Distributionen, wenn die benutzten Libraries auch da sind, wenn dein Programm auf KDE aufbaut müssen natürlich auch ein Teil der KDE-Pakete (libs) installiert sein.

Werbeanzeige