Dev-Cpp mit GTK oder GTKmm, Unterschiede



  • Sili schrieb:

    von qt weiss ich auch nicht viel, nur hab ich schon paar mal gehört dass das eine sehr gute gui ist, nur kostet sie unter windows geld. ich weiss aber nicht ob das auch stimmt.

    Stimmt nicht ganz: es gibt eine Version von Qt fuer Windows, die unter GPL steht. Allerdings nur eine alte Version, die zudem AFAIK nur mit dem MSVC 6 funktioniert.

    Wenn du deine Programme verkaufen willst, DANN musst du zahlen.

    Für gtkmm unter windows benötigst du nur 2 Links:

    http://gladewin32.sourceforge.net/ --> den "all in one" installer
    http://www.pcpm.ucl.ac.be/~gustin/win32_ports/gtkmm.html ---> GTKmm fuer MinGW

    hoff das hilft euch beiden weiter



  • @ blue-tiger: bekommt man das damit auch unter devcpp zum laufen oder geht das dann nur mit gladewin?



  • Sili schrieb:

    @ blue-tiger: bekommt man das damit auch unter devcpp zum laufen oder geht das dann nur mit gladewin?

    ich habs mit Dev-Cpp zum laufen gebracht. Einzige kleine Hürde:

    ich musste sowohl GTK+ als auch GTKmm in das HAUPTVERZEICHNIS von Dev-Cpp installieren (also z. B. C:/Dev-Cpp und nicht C:/Dev-Cpp/GTK und auch nicht C:/GTK). Bin mir nicht sicher, ob das ein MUSS ist, aber als ich es anders tat, hatte ich Probleme (die aber auch woanders her stammen könnten).

    Was du in Dev-Cpp selber einzustellen hast, bevor du loslegen kannst, liest du hier:

    http://gtkmm.org/docs/gtkmm-2.4/docs/tutorial/html/ape.html#id2521845



  • ok, danke 🙂

    zur anleitung: soweit war ich auch schon mal. nur leider ging das mit diesem befehl nicht, die ausgabe war "datei oder befehl nicht gefunden" (oder so ähnlich). ich werde es nun nochmals mit dem gladewin packet versuchen 🙂

    edit:
    die installation von gtk und gtkmm lief diesmal glatt 🙂 zumindest konnte ich auch das pkg dingsda ausführen. ich hab alles wie in der anleitung steht in das projekt bei den parametern gespeichert. nun liefert mir der compiler aber folgende meldung: gtkmm-test.o: No such file or directory. na ne is klar, die existiert ja auch nicht, aber warum benötigt er diese? die datei die ich kompilieren will heisst gtkmm-test.cpp, das projekt gtkmm und die cpp datei ist natürlich teil des projekts. was könnte da schiefgelfaufen sein?? 😕



  • compiler xxx.cpp -> xxx.o
    linker xxx.o + yyy.o + ... + libs -> name.exe



  • und was muss ich jetzt tun? 😉



  • Sili schrieb:

    und was muss ich jetzt tun? 😉

    Der Linker findet ein Object-File nicht (wenn ein Compiler eine Datei kompiliert, macht er ein Object-File draus. Der Linker baut aus den *o-Files der verschiedenen Dateien dann die .exe).

    Ist Dev-Cpp auch richtig installiert? kannst du "normale" Programme (ohne GTK) richtig kompilieren? (test mal mit einem "Hello World" - Programm). Was fuer Ausgaben macht der Compiler sonst so?



  • ich hab mir nach dem ich das hier gelesen habe auch den all-in-one und gtkmm runtergeladen. Hab die Anleitung befolgt, aber bei mir findet er das pkg, wie bei sili zu beginn, nicht. - kann das daran liegen das ich das ganze mit win98 durchführe?
    Ansonsten deinstalliere ich das heute einfach noch mal und versuchs erneut...



  • Gaahl schrieb:

    ich hab mir nach dem ich das hier gelesen habe auch den all-in-one und gtkmm runtergeladen. Hab die Anleitung befolgt, aber bei mir findet er das pkg, wie bei sili zu beginn, nicht. - kann das daran liegen das ich das ganze mit win98 durchführe?
    Ansonsten deinstalliere ich das heute einfach noch mal und versuchs erneut...

    Wenn du den PC noch nicht neu gestartet hast, versuch's mit einem Reboot (Win98 ersetzt die PATH-Variable erst nach einem Neustart mit den neuen Werten). Wenn es nicht daran lag, kannst du immer noch das Programm suchen "Start->Ausfuehren->Suchen" und dann halt mit ganzen Pfad in der Kommandozeile aufrufen. Ob das Kompilieren aber auch dann klappt kann ich nicht garantieren. Einen Versuch ists sicher wert 🙂



  • jep normale c++ programme funktionieren. allerdings wird zur iostream.h folgendes bemängelt: #warning: this file includes at least one deprecated or antiquated header. aber das sollte ja nichts zur sache tun. wie gesagt, die programme funktionieren. aber bei gtkmm programmen wird weiterhin besagte fehlermeldung ausgegeben 😞

    ausserdem ist mir aufgefallen das ich, wenn ich das pkg dingsda nochmals anzeigen lassen will, folgende meldung erscheint:

    Package gtkmm-2.0 was not found in the pkg-config search path.
    Perhaps you should add the directory containing `gtkmm-2.0.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'gtkmm-2.0' found

    was ist denn hier wieder los? ich habe nirgends etwas geändert, ausser in den projekt-eigenschaften im devcpp...

    @ gaahl: ich kämpfe hier auch mit win98 😉



  • Sili schrieb:

    jep normale c++ programme funktionieren. allerdings wird zur iostream.h folgendes bemängelt: #warning: this file includes at least one deprecated or antiquated header. aber das sollte ja nichts zur sache tun. wie gesagt, die programme funktionieren. aber bei gtkmm programmen wird weiterhin besagte fehlermeldung ausgegeben 😞

    ausserdem ist mir aufgefallen das ich, wenn ich das pkg dingsda nochmals anzeigen lassen will, folgende meldung erscheint:

    Package gtkmm-2.0 was not found in the pkg-config search path.
    Perhaps you should add the directory containing `gtkmm-2.0.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'gtkmm-2.0' found

    was ist denn hier wieder los? ich habe nirgends etwas geändert, ausser in den projekt-eigenschaften im devcpp...

    @ gaahl: ich kämpfe hier auch mit win98 😉

    #include <iostream.h>
    

    sollte auch nicht mehr verwendet werden. Das ist alt und nichtmehr standardgemaess. (Kleiner Tipp: ordentlich C++ lernen bevor du dich in API's einlernst 🙂

    Der pkg-config Befehl ist auch

    pkg-config --libs --cflags gtkmm-2.4
    

    und nicht

    pkg-config --libs --cflags gtkmm-2.0
    

    sicher dass du auf die aktuelle Seite geguckt hast?

    Richtig: http://gtkmm.org/docs/gtkmm-2.4/docs/tutorial/html/



  • klar, ich trottel 😃 ich hatte noch die alte dokumentation auf dem pc 🙄
    weisst du auch, warum das mit diese *.o dateien nicht funktioniert?

    ohne das .h findet er die datei leider nicht 😞



  • Sili schrieb:

    weisst du auch, warum das mit diese *.o dateien nicht funktioniert?

    ohne das .h findet er die datei leider nicht 😞

    Wegen der *.o Datei hab ich leider keine Ahnung, sorry 😕

    Du meinst, ohne ".h" findet er iostream nicht?

    also wenn

    #include <iostream>   // kein .h
    using namespace std;
    int main()
    {
        cout << "Hello, World!" << endl;
        return 0;
    }
    

    so wie's da steht nicht absolut fehlerlos kompiliert, dann stimmt was an deiner Dev-Cpp - Installation nicht.



  • ja also laufen tut's jetzt aber auch bei mir findet er die o-dateien nicht (mal heute noch schauen wie ich das hin bekomme). mit iostream hat er bei mir allerding keine probleme...





  • ich hab alles deinstalliert und nochmals installiert. nun läuft auch auch ein normales hallo welt. aber leider krieg ich die fehlermeldung mit dem *.o nicht weg. 😞


Anmelden zum Antworten