编译自己的项目时出现 gtkmm 4.0 头文件构建错误

问题描述

我最近将我的 gtkmm 框架更新到了 4.0.0 版并更新了代码以与该框架兼容。我在 Windows 上的 JetBrains CLion 中使用 msys2。但是,当我编译项目时,我在各种框架头文件(如 gtkmm、glibmm 等)中收到了大量警告和错误。我找不到可能与我的代码相关的错误。这是我的 Cmake 配置

cmake_minimum_required (VERSION 3.17.5)
set (CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_FLAGS " -lstdc++fs")
project (Accounter)
find_package(Boost 1.73 COMPONENTS date_time required)
FIND_LIBRARY (LIBZIP_LIBRARY NAMES zip)
FIND_PATH (LIBZIP_INCLUDE_DIR zip.h PATH_SUFFIXES include/zip include ) # Find header
INCLUDE(FindPackageHandleStandardArgs)

FIND_PACKAGE(PkgConfig required)
pkg_check_modules(GTKMM gtkmm-4.0)
include_directories( ${GTKMM_INCLUDE_Dirs} )
link_directories( ${GTKMM_LIBRARY_Dirs} )
#ADD_DEFinitioNS(${GTK_CFLAGS_OTHER})

FIND_PACKAGE_HANDLE_STANDARD_ARGS(libzip  DEFAULT_MSG  LIBZIP_LIBRARY LIBZIP_INCLUDE_DIR)
link_directories((Accounting))
add_subdirectory(Accounting)
link_directories(OdsFile)
add_subdirectory(OdsFile)
link_directories(GUI)
add_subdirectory(GUI)
if(Boost_FOUND)
    include_directories(${Boost_INCLUDE_Dirs})
    add_executable(Accounter main.cpp)
    target_link_libraries(Accounter LINK_PUBLIC Accounting OdsFile GUI ${Boost_LIBRARIES} ${LIBZIP_LIBRARY} stdc++fs ${GTKMM_LIBRARIES} )
else()
    message( FATAL_ERROR "Boost library is required for this library")
ENDIF(). 

编译日志在 this link 下。我是否错过了 cmake 配置中的某些内容?应该怎么编译?如果需要,我将提供其他信息和文件。我认为错误应该在我这边而不是框架上。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)