由于gtk使用pkg-config来查找链接库、头文件,我们需要在cmake中调用pkg-config。
具体如何调用,请参考cmake使用pkgconfig,下面只给结果。
这里实际上我用的是gtkmm,gtk是一个样子。
目录结构如下:
$ tree
.
├── build
├── CMakeLists.txt
├── custom.css
├── main.cpp
├── mybutton.cpp
└── mybutton.h
2 directories, 5 files
CMakeLists.txt:
cmake_minimum_required(VERSION 3.1)
project(main)
set(EXE main)
aux_source_directory(. SRC)
find_package(PkgConfig REQUIRED)
pkg_check_modules(GTKMM REQUIRED gtkmm-4.0)
add_compile_options(${GTKMM_CFLAGS_OTHER})
add_executable(${EXE} ${SRC} )
target_include_directories(${EXE} PUBLIC ${GTKMM_INCLUDE_DIRS})
target_link_libraries(${EXE} PUBLIC ${GTKMM_LIBRARIES})