我目前正在开发一个在 linux 平台中使用 Qt5Charts 的项目。默认情况下,系统中有 qt5.5。我已经在我的主目录中安装了 qt5.8。

为了构建我使用的项目,cmake。我的 Cmakefile 看起来像这样

find_package(Qt5Widgets)
set(CMAKE_AUTOMOC ON)
    if(Qt5Widgets_FOUND)
        set( QT_INCLUDE_DIR
            ${Qt5Widgets_INCLUDE_DIRS}
        )
        include_directories( ${QT_INCLUDE_DIR} )
        set (LIBS ${LIBS} ${Qt5Widgets_LIBRARIES} )
    endif()

find_package(Qt5Charts)
    if(Qt5Charts_FOUND)
        set( QT_INCLUDE_DIR
            ${Qt5Charts_INCLUDE_DIRS}
        )
        include_directories( ${QT_INCLUDE_DIR} )
        set (LIBS ${LIBS} ${Qt5Charts_LIBRARIES} )
    endif()

但是 cmake 无法找到 Qt5Charts,因为它仅在 Qt5.8 中可用。 Qt5Widgets 已成功找到,因为它在 Qt5.5 中也可用。

对于 Qt5Charts,它说



有没有办法告诉 cmake 寻找 Qt5.8 而不是 Qt5.5 的包?或者有没有办法指定要查找的默认路径?

最佳答案

如果您使用 apt-getyumdnf 或任何其他包管理器安装了 Qt,则需要单独安装 Charts。我在使用 Qt 5.8 的 Fedora 中遇到了同样的情况。 qt5-qtcharts-devel 的安装解决了这个问题。

sudo dnf install qt5-qtcharts-devel

对于基于 debian 的发行版和其他发行版,软件包名称可能不同。

但是,在我的 Mac 中,我使用 brew 安装了 qt5,它安装了包括 charts 在内的所有内容。

关于c++ - 使用 cmake 构建 QTCharts,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44098195/

10-12 00:43