如何在windows平台下使用gtk和cmake?

如何在windows平台下使用gtk和cmake?,windows,gtk,cmake,Windows,Gtk,Cmake,这是FindGTK.cmake: # don't even bother under WIN32 IF(UNIX) ... ENDIF(UNIX) 因此,它根本不打算在windows中工作,即使几天前我已经安装了gtk+-bundle_2.20.0-20100406_win32 现在如何正确地使用gtk和cmake?鉴于您使用的是gtk 2.20.0(即版本>=2),您应该使用GTK2而不是gtk。但是,如果FindGTK2存在相同的问题,则可以使用查找头文件,也可以使用查找关联的库文

这是
FindGTK.cmake

# don't even bother under WIN32
IF(UNIX)


...


ENDIF(UNIX)
因此,它根本不打算在windows中工作,即使几天前我已经安装了
gtk+-bundle_2.20.0-20100406_win32


现在如何正确地使用
gtk
cmake

鉴于您使用的是gtk 2.20.0(即版本>=2),您应该使用GTK2而不是gtk。但是,如果FindGTK2存在相同的问题,则可以使用查找头文件,也可以使用查找关联的库文件。把这些放在一起,您可以构建GTK2_找到的符号、GTK2_库和GTK2_包含它应该生成的目录。你可能会发现我的文件有点帮助;它使用了“FindPackageHandleStandardArgs”,它负责确保在库不存在并且给出了所需标志时失败的细节。不幸的是,关于创建自定义FindXYZ.cmake模块的文档并不多;然而,我认为,您应该能够从现有模块中破解一些东西


另一种选择是联系该特定模块的维护人员。可以在链接中找到。Philip Lowman是FindGTK2模块的目标用户。

我决定自己编写一个
FindGTK2.cmake
但是我如何覆盖内置的一个,而不删除它或用我自己的文件替换它?@Runner,你可以设置变量cmake_module_PATH指向你自己的FindGTK2.cmake文件所在的文件夹;CMake在默认文件夹之前搜索CMake_MODULE_路径。编写
FindGTK2.CMake
比我想象的要难…我如何才能手动包含gtk2的头和库,而不是编写
FindGTK2.CMake