Wie Verbinde ich mich mit gtk-Bibliothek einfach mit cmake in windows?
Ich bin derzeit dabei, es auf eine sehr hässliche Art und Weise, indem Sie manuell einschließlich aller erforderlichen Pfad(der gtk-bundle ist bei D:/Tools/gtk+-bundle_2.20.0-20100406_win32
):
include_directories(D:/Tools/gtk+-bundle_2.20.0-20100406_win32/include/gtk-2.0 D:/Tools/gtk+-bundle_2.20.0-20100406_win32/include/glib-2.0 D:/Tools/gtk+-bundle_2.20.0-20100406_win32/lib/glib-2.0/include D:/Tools/gtk+-bundle_2.20.0-20100406_win32/include/cairo D:/Tools/gtk+-bundle_2.20.0-20100406_win32/include/pango-1.0 D:/Tools/gtk+-bundle_2.20.0-20100406_win32/lib/gtk-2.0/include D:/Tools/gtk+-bundle_2.20.0-20100406_win32/include/atk-1.0)
link_directories(D:/Tools/gtk+-bundle_2.20.0-20100406_win32/lib)
target_link_libraries(MyProgram gtk-win32-2.0.lib)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fügen Sie einfach das Verzeichnis mit pkg-config (die ist in deinem gtk-bundle/bin-Verzeichnis) auf Ihrem WEG. So, CMake wird es finden.
Hier ein CMakeLists.txt für eine Probe-Anwendung, geschrieben in GTK2:
Und den main.c-Datei für meine test-app:
Getestet habe ich es auf Win XP mit CMake 2.4 und CMake 2.8 und MinGW, und es funktioniert. Es sollte auch außerhalb MinGW.
Mein CMake-wissen ist etwas veraltet, und ich versuche mich zu distanzieren von Windows, da finde ich es unangenehm, aber das ist, was
FindGTK.cmake
werden sollte.Laut dieser Beitrag auf den CMake-mailing-Liste sollten Sie:
Update: Es könnte sein, dass die
FindGTK.cmake
ist in der Tat zu alt und bezieht sich auf GTK1, möchten Sie vielleicht versuchenFindGTK2.cmake
statt. Wenn es ist nicht Teil Ihres CMake-version können Sie versuchen und bekommen es von hier.Update2: in der Tat, die die FindGTK2 link oben ist nicht gut für Sie. Alle Logik ist beigefügt:
Update3: Wieder ein Zitat aus der mailing-Liste:
So dass es scheinen, Ihnen fehlt die: