2012-04-30 20 views
6

Intentando compilar una biblioteca en Ubuntu con CMake y uno de los archivos incluye glib.h. El paquete está instalado y glib.h está en /usr/include/glib-2.0/glib.h.Incluyendo glib.h en un proyecto de CMake

Agregué lo siguiente pero el compilador aún no puede encontrar glib.h.

FIND_PACKAGE(glib-2.0) 
IF (glib-2.0_FOUND) 
    INCLUDE_DIRECTORIES(${glib-2.0_INCLUDE_DIR}) 
ENDIF() 

¿Alguien sabe qué paquete debo buscar?

código real que terminé usando es

find_package(PkgConfig REQUIRED) 
pkg_check_modules(GLIB_PKG glib-2.0) 

if (GLIB_PKG_FOUND) 
    message(Found glib-2.0) 
include_directories(${GLIB_PKG_INCLUDE_DIRS}) 

Respuesta

3

le sugiero que vaya a través del enlace: How package finding works.

Como referencia, puede echar un vistazo a este CMake Module para encontrar glib2.

La línea de su interés aquí es:

find_path(GLIB_INCLUDE_DIR NAMES glib.h PATH_SUFFIXES glib-2.0) 

sugiero copiar este módulo en su directorio <project root>/cmake/. Y, a continuación, utilice un find_package en su archivo raíz CMakeLists.txt.

+1

Segundo si el enlace está roto. –

+0

Sí, el enlace está roto. Realmente me gustaría ver el módulo CMake de ejemplo – Sean

+0

Creo que esto podría ser https://github.com/gammu/gammu/blob/master/cmake/FindGlib.cmake –

Cuestiones relacionadas