因为原项目是使用CMake构建的,而且包含其他非标准库,同时并没有系统性学习CMake,还有Qt使用的QMake
现在需要在原项目的基础上加上实时绘制曲线图,以方便查看数据和调试
那么最好的办法就是CMake里写入QCustomPlot所需要的东西,不用为了改为QMake改变很多东西
以CMake建立Qt项目,导入qcustomplot.cpp qcustomplot.h,错误信息如下
这些报错是由于缺失有关printsupport的库
在官方文档中,Qt5.0+版本需要加上
greaterThan(QT_MAJOR_VERSION, 4) : QT += widgets printsupport
那么用CMake怎么样加上有关printsupport的库?
搜索文档printsupport
观察自动生成的CMakeList.txt里有两行引起了我的注意
find_package(Qt5 COMPONENTS Widgets REQUIRED)
...
target_link_libraries(RealtimeCurve PRIVATE Qt5::Widgets)
可以仿照此,尝试加写两行
find_package(Qt5 COMPONENTS Widgets REQUIRED)
find_package(Qt5 COMPONENTS PrintSupport REQUIRED)
...
target_link_libraries(RealtimeCurve PRIVATE Qt5::Widgets)
target_link_libraries(RealtimeCurve PRIVATE Qt5::PrintSupport)
构建,尝试成功
总的来说,只需在CMakeList.txt加上两句即可
find_package(Qt5 COMPONENTS PrintSupport REQUIRED)
target_link_libraries(RealtimeCurve PRIVATE Qt5::PrintSupport)
标签:Qt5,CMake,REQUIRED,QCustomPlot,libraries,构建,printsupport,find
From: https://www.cnblogs.com/champrin/p/17013685.html