gtkmm unter Ubuntu CodeBlocks installieren
-
Ich versuche gtkmmm unter Codeblocks zum laufen zu bringen.
Ich habe die Aktuelle Version von gtkmm bereits installiert.
Beim Linker habe ich /usr/lib/libgtkmm-2.4.so und bei Search Directories /usr/include/gtkmm-2.4 hinzugefügt. Jetzt findet es zwar gtkmm.h aber in gtkmm.h findet es die glibmm.h nicht mehr. Wenn ich dann /usr/include/glibmm-2.4 hinzufüge geht es immer so weiter.Was mache ich falsch?
Vielen Dank für Eure Hilfe!
Jokester
-
Alle nötigen Include-dirs liefert dir
$ pkg-config --cflags gtkmm-2.4
Zum Linken statt "--clags" einfach "--libs" schreiben.
Wie sich das in CodeBlocks integriert? keine Ahnung. Kann das nicht mit normalen Makefiles umgehen? Hat das Support für Makefile-Generatoren ala CMake? Wie schauts mit autotools-integration aus?
-
Ja wenn ich den Befehl eingebe zeigt es mir alle Includepfade an. Aber wie teile ich es dem Linker richtig mit?
Ich habe bei Linker Other Linker options: das hier eingetragen:
pkg-config --libs gtkmm-2.4
aber wo trage ich pkg-config --cflags gtkmm-2.4 ein?Nein CodeBlocks benutzt glaube ich keine Makefiles.
Welche IDE benutzst du?
-
Schau hier: http://developer.gnome.org/gtkmm-tutorial/2.24/sec-headers-and-linking.html.en
Oder du kannst das Terminal öffnen und mit
$ cd
in den Projektordner wechseln, wo du dann
$ g++ main.cpp -o Name `pkg-config gtkmm-2.4 --cflags --libs`
eingibst. Die Applikation findest du dann im Projektordner.
-
Vielen Dank!
Aber wie kann ich es jetzt ohne Konsole ausführen?
Das mit dem .ac File verstehe ich nicht richtig wie man es hinzufügen muss.
-
Bei Compiler settings -> Other options musst du
`pkg-config --cflags gtkmm-2.4` `pkg-config --cflags libglademm-2.4`
hinzufügen.
Bei other Linker options fügst du`pkg-config --libs gtkmm-2.4` `pkg-config --libs libglademm-2.4`
hinzu.
-
Hallo jokester,
du kannst dir in Code::Blocks eine Benutzervorlage für ein Projekt erstellen. Dann hast du unter "Ein neues Projekt erstellen" auch ein Gtkmm-Projekt verfügbar und musst bei einen neuen Projekt nicht jedes mal die Optionen wieder neu einstellen.Dazu musst du die beiden folgenden Dateien im selben Verzeichnis speichern.
main.cpp
#include <gtkmm.h> int main(int argc, char *argv[]) { Gtk::Main kit(argc, argv); Gtk::Window window; kit.run(window); return 0; }
GTKmm Application.cbp
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <CodeBlocks_project_file> <FileVersion major="1" minor="6" /> <Project> <Option title="GTKmm Application" /> <Option pch_mode="2" /> <Option compiler="gcc" /> <Build> <Target title="Debug"> <Option output="bin/Debug/GTKmm Application" prefix_auto="1" extension_auto="1" /> <Option object_output="obj/Debug/" /> <Option type="0" /> <Option compiler="gcc" /> <Compiler> <Add option="-g" /> </Compiler> </Target> <Target title="Release"> <Option output="bin/Release/GTKmm Application" prefix_auto="1" extension_auto="1" /> <Option object_output="obj/Release/" /> <Option type="1" /> <Option compiler="gcc" /> <Compiler> <Add option="-O2" /> </Compiler> <Linker> <Add option="-s" /> </Linker> </Target> </Build> <Compiler> <Add option="-Wall" /> <Add option="`pkg-config gtkmm-2.4 --cflags`" /> </Compiler> <Linker> <Add option="`pkg-config gtkmm-2.4 --libs`" /> </Linker> <Unit filename="main.cpp" /> <Extensions> <code_completion /> <lib_finder disable_auto="1" /> <envvars /> <debugger /> </Extensions> </Project> </CodeBlocks_project_file>
Jetzt das Projekt in Code::Blocks öffnen, oder Doppelclick auf die Datei "GTKmm Application.cbp". Unter "Datei" → "Save project as template" kannst du dieses jetzt als Vorlage speichern. Diese GTKmm-Projekt-Vorlage findest du dann unter "Ein neues Projekt erstelln" → "Benutzervorlagen".
-
Vielen Dank euch beiden