2017-08-11 51 views
1

我抄一个示例项目从GTK如何配置克利翁编译gtkmm的项目

#include <gtkmm.h> 

int main(int argc, char *argv[]) 
{ 
    auto app = Gtk::Application::create(argc, argv, "org.gtkmm.examples.base"); 

    Gtk::Window window; 
    window.set_default_size(200, 200); 

    return app->run(window); 
} 

,并直接从终端编译时,它工作得很好:

g++ main.cpp -o simple `pkg-config gtkmm-3.0 --cflags --libs` 

但是当我尝试编译使用克利翁它说

fatal error: gtkmm.h: No such file or directory 
#include <gtkmm.h> 

我的CMakeLists.txt看起来是这样的:

cmake_minimum_required(VERSION 3.8) 
project(songbook) 

set(CMAKE_CXX_STANDARD 17) 

find_package(PkgConfig REQUIRED) 
pkg_check_modules(GTK3 REQUIRED gtk+-3.0) 

include_directories(${GTK3_INCLUDE_DIRS}) 
link_directories(${GTK3_LIBRARY_DIRS}) 

add_definitions(${GTK3_CFLAGS_OTHER}) 

set(SOURCE_FILES main.cpp) 
add_executable(songbook ${SOURCE_FILES}) 

target_link_libraries(songbook ${GTK3_LIBRARIES}) 

我在做什么错?

回答

1

谢谢https://github.com/DreaminginCodeZH/gtkmmproject!最终CMakeLists.txt:

cmake_minimum_required(VERSION 3.8) 
project(songbook) 

set(CMAKE_CXX_STANDARD 17) 
find_package(PkgConfig) 
pkg_check_modules(GTKMM gtkmm-3.0) 

include_directories(${GTKMM_INCLUDE_DIRS}) 
link_directories(${GTKMM_LIBRARY_DIRS}) 

set(SOURCE_FILES main.cpp MainWindow.cpp MainWindow.h) 
add_executable(songbook ${SOURCE_FILES}) 
target_link_libraries(${CMAKE_PROJECT_NAME} ${GTKMM_LIBRARIES})