本文介绍了如何配置Clion来编译gtkmm项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经从GTK复制了一个示例项目
I have copied a sample project from GTK
#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);
}
直接从终端进行编译时,效果很好:
And when compiling directly from terminal it works just fine:
g++ main.cpp -o simple `pkg-config gtkmm-3.0 --cflags --libs`
但是当我尝试使用Clion进行编译时,它会显示
But when I try compilation using Clion it says
fatal error: gtkmm.h: No such file or directory
#include <gtkmm.h>
我的CMakeLists.txt看起来像这样:
My CMakeLists.txt looks like this:
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})
我在做什么错了?
推荐答案
感谢!最终的CMakeLists.txt:
Solved thanks to https://github.com/DreaminginCodeZH/gtkmmproject! Final 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})
这篇关于如何配置Clion来编译gtkmm项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!