Jakob_Ullmann - Mo 14.06.10 17:20
Titel: C++: GTK+ (gtkmm) einrichten
Hi!
Ich wollte mir mal ansehen, was bei C++ in Sachen GUI läuft. Nachdem ich mir wxWidgets angesehen habe, fand ich doch, dass mir gtkmm besser gefällt. Die von mir bevorzugte IDE Anjuta bietet dafür ja Glade-Support. Das war mir aber zu langweilig, ich will wirklich mal GUIs von Hand programmieren. Ich hab jetzt also (Ubuntu Karmic Koala) folgendes ins Terminal eingegeben (so oder so ähnlich):
Quelltext
1:
| sudo apt-get install libgtkmm-2.4-dev |
Ging auch soweit. Nun habe ich bei Anjuta ein neues Projekt "Generisches C++" erstellt und bei der main.cc folgenden Source eingegeben:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| #include <gtkmm-2.4/gtkmm.h>
int main(int argc, char *argv[]) { Gtk::Main kit(argc, argv); Gtk::Window window;
Gtk::Main::run(window);
return 0; } |
Erst hatte ich nur wie beim Beispiel "#include <gtkmm.h>" dastehen. Da gab es aber tausende Fehler. Also hab ich mich mit dem Terminal durch das Verzeichnis
/usr/include gehangelt und herausgefunden, dass der Ordner
/usr/include/gtkmm-2.4/ heißt. Dann hab ich das wie oben angepasst und bei Anjuta Projekt->Eigenschaften das Modul "gtkmm-2.4" hinzugefügt. Die gtkmm.h findet er jetzt, aber jetzt gibt es 161 weitere Fehler. Ich weiß nicht, wie ich die kopiere, aber die ersten sind welche der Art:
Quelltext
1: 2: 3: 4: 5:
| /usr/include/gtkmm-2.4/gtkmm.h:29:20: error: glibmm.h: No such file or directory /usr/include/gtkmm-2.4/gtkmm.h:30:19: error: giomm.h: No such file or directory /usr/include/gtkmm-2.4/gtkmm.h:31:19: error: gdkmm.h: No such file or directory /usr/include/gtkmm-2.4/gtkmm.h:33:26: error: gtkmm/object.h: No such file or directory /usr/include/gtkmm-2.4/gtkmm.h:34:31: error: gtkmm/aboutdialog.h: No such file or directory |
Und die sind ja alle in den gtkmm-Sourcen, die ja schreibgeschützt sind (natürlich kann ich den Schreibschutz einfach aufheben und die Pfade in den Code setzen, aber so richtig sauber wäre das nicht).
Es muss doch eine vernünftige Lösung geben, das richtig zu konfigurieren. Bei der IDE Code::Blocks ist das ähnlich verzwickt. Und so richtig habe ich keine Lust, mit g++ von Hand zu compilieren, falls das heute noch jemand macht.
Jemand ne Idee? Irgendwas ist da ja wahrscheinlich bei der Konfiguration schief gelaufen...
---
Nachtrag: Wenn ich einfach eine GTK-Anwendung mit Glade-Designer compiliere, klappt alles. Komischerweise.
Nachtrag2: Und wenn ich's von Hand kompiliere, geht's auch (mit GEdit und g++ über das Terminal).