未定义引用使用cmake创建的自定义lib中的`vtable

时间:2017-02-12 12:32:41

标签: cmake qt5

我收到错误:lib / libhrlLib.so:未定义引用`hrlQseqDev :: waiting(bool,int)'等等... 我正在尝试使用cmake(3.7.2)而不是使用qmake(Qt5)构建我的项目

的CMakeLists.txt:

cmake -G "Unix Makefiles" -DINC_PATH:STRING="some includes" -DTARGET_EXTLIBS:STRING="sys libs" -DTARGET_NAME:STRING=LibName -DBUILD_LIB:BOOL=1 -DTARGET_SRCS:STRING="cpp- and c-file" -DQMODULES:STRING="Core Gui Widgets PrintSupport" -DOUT_PATH:STRING=InstallPath .. -DCMAKE_INSTALL_PREFIX=InstallPath >> /dev/null

共享库使用:

构建
cmake -G "Unix Makefiles" -DINC_PATH:STRING="some includes" -DTARGET_EXTLIBS:STRING="sys libs" -DTARGET_NAME:STRING=ProgName -DBUILD_LIB:BOOL=0 -DTARGET_SRCS:STRING="cpp-file" -DQMODULES:STRING="Core Gui Widgets PrintSupport" -DOUT_PATH=InstallPath -DUSE_LIB:STRING="LibName" -DUSE_LIB_PATH:STRING="BuildPath of LibName" .. -DCMAKE_INSTALL_PREFIX=InstallPath >> /dev/null

当我尝试使用以下命令构建针对此共享库的程序时:

{{1}}

我收到错误'lib / libhrlLib.so:未定义的引用...'。 使用qmake构建库时,我不会收到此错误。

我该如何解决这个问题?

0 个答案:

没有答案