我收到一个错误
undefined reference to `QwtPlot::QwtPlot(QWidget*)'
当我尝试构建我的项目时,即使设置中一切看起来都很好。
在我的 CmakeLists.txt 中我有
include_directories(
[...]
${QWT_INCLUDE_DIR})
它指向我的 Qwt 标头的位置
和
find_package(Qwt REQUIRED)
有效,因为 QWT_FOUND 设置为 True
这是我的 FindQwt.cmake:
#MESSAGE("Searching for QWT")
FIND_PATH(QWT_INCLUDE_DIR NAMES qwt.h PATHS
/usr/include
/usr/local/include
"$ENV{LIB_DIR}/include"
"$ENV{INCLUDE}"
PATH_SUFFIXES qwt-qt4 qwt
)
FIND_LIBRARY(QWT_LIBRARY NAMES qwt qwt5 qwt-qt4 qwt5-qt4 PATHS
/usr/lib
/usr/local/lib
"$ENV{LIB_DIR}/lib"
"$ENV{LIB}/lib"
)
IF (QWT_INCLUDE_DIR AND QWT_LIBRARY)
SET(QWT_FOUND TRUE)
ENDIF (QWT_INCLUDE_DIR AND QWT_LIBRARY)
IF (QWT_FOUND)
IF (NOT QWT_FIND_QUIETLY)
MESSAGE(STATUS "Found QWT: ${QWT_LIBRARY}")
ENDIF (NOT QWT_FIND_QUIETLY)
ELSE (QWT_FOUND)
IF (QWT_FIND_REQUIRED)
MESSAGE(FATAL_ERROR "Could not find QWT")
ENDIF (QWT_FIND_REQUIRED)
ENDIF (QWT_FOUND)
使用消息打印 ${QWT_INCLUDE_DIR} 指向 qwt_plot.h,它定义了 QwtPlot::QwtPlot(QWidget*) ,所以我不确定我可能会丢失什么。
我忘记了将库实际链接到项目
target_link_libraries(project
[...]
${QWT_LIBRARY}
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)