[CMake] Unable to find GTK with cmake on Ubuntu

Pierrick Grasland pierrick.grasland at gmail.com
Mon Jan 12 02:09:22 EST 2009


Thanks a lot.

But, like I said before, I found a workaround, and now, Philip's FindGtk2
work perfectly.


On Mon, Jan 12, 2009 at 3:56 AM, Kermit Mei <kermit.mei at gmail.com> wrote:

> Hi, how about this CMakeLists.txt?  I use it to test my GTK+ programs,
> and it always work well;p
>
>
> cmake_minimum_required(VERSION 2.6)
> INCLUDE(UsePkgConfig)
> FIND_PACKAGE(GTK)
> IF (GTK_FOUND)
>    INCLUDE_DIRECTORIES(${GTK_INCLUDE_DIR})
>     ADD_DEFINITIONS(-DHAVE_GTK)
>    MESSAGE("GTK 1.x found and used as GUI\n")
> ELSE (GTK_FOUND)
>    PKGCONFIG(gtk+-2.0 GTK2_INCLUDE_DIR GTK2_LINK_DIR GTK2_LINK_FLAGS
> GTK2_CFLAGS)
>    PKGCONFIG(gthread-2.0 GTHREAD_INCLUDE_DIR GTHREAD_LINK_DIR
> GTHREAD_LINK_FLAGS+- GTHREAD_CFLAGS)
>     IF (GTK2_INCLUDE_DIR)
>         SET(CMAKE_C_FLAGS "${GTK2_CFLAGS} ${GTHREAD_CFLAGS}")
>         STRING(REGEX REPLACE "-l" "" GTK_LIBRARIES "${GTK2_LINK_FLAGS}
>                                      ${GTHREAD_LINK_FLAGS}")
>         SEPARATE_ARGUMENTS(GTK_LIBRARIES)
>         ADD_DEFINITIONS(-DHAVE_GTK2)
>         MESSAGE("GTK 2.x found and used as GUI\n")
>     ELSE (GTK2_INCLUDE_DIR)
>         MESSAGE(FATAL_ERROR "GTK or GTK2 is required to build this
> project.")
>     ENDIF (GTK2_INCLUDE_DIR)
> ENDIF (GTK_FOUND)
>
> ADD_EXECUTABLE(main main.c)
> TARGET_LINK_LIBRARIES(main ${GTK2_LINK_FLAGS})
>
> ## Have fun!
>
> _______________________________________________
> CMake mailing list
> CMake at cmake.org
> http://www.cmake.org/mailman/listinfo/cmake
>



-- 
Pierrick Grasland
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20090112/52b75e6b/attachment.htm>


More information about the CMake mailing list