2017-05-21 393 views
2

我目前正在研究一個在Linux平臺中使用Qt5Charts的項目。默認情況下,系統中有qt5.5。我在我的主目錄中安裝了qt5.8。使用cmake構建QTCharts

要構建我正在使用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它說

無法找到 「Qt5Charts」 與 下列名稱的任何提供包配置文件:Qt5ChartsConfig.cmake qt5charts-config.cmake

是有一種方法可以告訴cmake查找Qt5.8而不是Qt5.5的包嗎?或者有沒有辦法指定要查找的默認路徑?

QT/5.8/gcc_64/lib中/ cmake的是cmakeFiles的5.8 /usr/lib目錄/ x86_64的-Linux的GNU/cmake的5.5

回答

0

位置如果您有apt-get Qt安裝或yumdnf或任何其他軟件包管理器,則需要分別安裝Charts。我在使用QT 5.8的Fedora中遇到了同樣的情況。安裝qt5-qtcharts-devel解決了這個問題。

sudo dnf install qt5-qtcharts-devel 

對於基於debian的發行版和其他發行版,軟件包名稱可能不同。

但是在我的Mac上,我安裝了qt5,使用brew,它安裝了包括charts在內的所有內容。