构建WITH_QT会产生各种错误

时间:2017-06-23 15:54:29

标签: c++ qt opencv cmake

我正在Ubuntu 16.04上构建OpenCV 3.2

我包括许多库(额外的模块,TBB,Eigen等等),所有内容都在编译和工作,因为它应该 我唯一的问题是选择WITH_QT选项 虽然它已经安装并且配置了可执行路径,但我甚至测试过创建QT应用程序,但在编译opencv_contrib示例时它仍然给我带来了未完成的引用错误

../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::KeyPointSettingsSelector'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::SlotQString'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::view::TranslationMatchView'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `CvButtonbar::staticMetaObject'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::gui::FilterCallTab'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::view::ImageView'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::MatchSettingsSelector'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::Slot'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::MatchManagement'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `typeinfo for cvv::qtutil::MatchSelection'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::OverlayFilterWidget'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::ChangedPixelsWidget'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `cvv::qtutil::SignalMatRef::signal(cv::Mat&) const'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::gui::OverviewPanel'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `cvv::qtutil::Signal::signal() const'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::STFLQueryWidget'
../../lib/libopencv_world.so.3.2.0: referência indefinida para `vtable for cvv::qtutil::KeyPointSelectionSelector'

任何解决方法?

更新:

试图禁用“cvv”模块:cmake -DBUILD_opencv_cvv = OFF

现在我得到了:

[ 47%] Linking CXX executable ../../bin/optflow-example-motempl
../../lib/libopencv_world.so.3.2.0: referência indefinida para .vtable for CvWinProperties' ../../lib/libopencv_world.so.3.2.0: refer�./../lib/�libopencv_world.so.3.2.0ncia: indefinidarefer paravtable for �CvCheckBox�ncia'
indefinida. para./ ..vtable/ libfor/ libopencv_world.so.3.2.0CvWinProperties: ' refer.�./�.ncia. indefinida/lib /libopencv_world.so.3.2.0: referênciapara indefinida para vtable for CvPushButton' .vtable. for/../lib/libopencv_world.so.3.2.0: referência indefinidaCvCheckBox ' paravtable for GuiReceiver'

1 个答案:

答案 0 :(得分:0)

我不得不关闭opencv_cvv和opencv_world -DBUILD_opencv_cvv = OFF -DBUILD_opencv_world = OFF