【问题标题】:Building WITH_QT gives various errors构建 WITH_QT 会出现各种错误
【发布时间】:2017-06-23 15:54:28
【问题描述】:

我正在 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'

【问题讨论】:

  • 看起来你没有链接到 qtutil。

标签: c++ qt opencv cmake


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-21
    • 1970-01-01
    • 2012-09-01
    • 2020-12-26
    • 1970-01-01
    • 1970-01-01
    • 2011-02-27
    • 2011-10-16
    相关资源
    最近更新 更多