2010-04-26 30 views
2

这是FindGTK.cmake如何在Windows平台下使用cmake的gtk?

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


... 


ENDIF(UNIX) 

所以它不打算在Windows中在所有的工作,即使我已经安装了gtk+-bundle_2.20.0-20100406_win32天前。

我现在应该如何正确使用gtkcmake

回答

1

鉴于您使用的是GTK 2.20.0(即版本> = 2),您应该使用GTK2而不是GTK。但是,如果FindGTK2有同样的问题,那么您可以使用find_path来查找头文件,并且您可以使用find_library来查找关联的库文件。把它们放在一起,你可以构建它应该产生的符号GTK2_FOUND,GTK2_LIBRARIES和GTK2_INCLUDE_DIRS。您可能会发现我的FindUnitTestPlusPlus.cmake文件有点帮助;它使用“FindPackageHandleStandardArgs”,它负责处理确保在库不存在并且给出REQUIRED标志时失败的基本细节。不幸的是,在创建自定义的FindXYZ.cmake模块方面真的没有太多的文档;但是,我认为,您应该能够从现有模块中共同破解一些东西。

另一种选择是联系该特定模块的维护人员。 A list of CMake find module maintainers可能在链接中找到。 Philip Lowman是FindGTK2模块的最佳人选。

+0

我决定自己编写一个'FindGTK2.cmake',但是如何覆盖内置的一个而不删除或用我自己的文件替换它? – Gtker 2010-04-26 08:48:55

+0

@Runner,你可以设置变量CMAKE_MODULE_PATH指向你自己的FindGTK2.cmake文件所在的文件夹; CMake在默认文件夹之前搜索CMAKE_MODULE_PATH。 – 2010-04-26 08:55:15

+0

写一个'FindGTK2.cmake'比我想象的要困难...我怎么才能手动包含gtk2的头文件和库,而不是写'FindGTK2.cmake'? – Gtker 2010-04-26 09:43:48

相关问题