简体   繁体   English

链接OpenCV 3.0。 向QT创建者开放

[英]Linking OpenCV 3.0. libs to QT creator

I am working on vmware on Ubuntu 14.04 我正在Ubuntu 14.04上的vmware上工作

I can't seem to find a way to link libraries in qt creator. 我似乎找不到在Qt Creator中链接库的方法。 I have followed a really good tutorial here and did exactly what it says but get undefined reference to: when trying to build the project. 在这里遵循了一个非常不错的教程,并按照它的说做了,但是在尝试构建项目时得到了未定义的引用:

Opencv works fine when compiling from terminal. 从终端编译时,Opencv可以正常工作。

I have created a QT project and added these lines to my .pro file: 我创建了一个QT项目,并将这些行添加到我的.pro文件中:

INCLUDEPATH += /usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui

I am not an experienced programmer, have I done something wrong? 我不是一个经验丰富的程序员,我做错了什么吗? I have searched for simmilar problems, but none of the offered solutions helped. 我已经搜索了类似的问题,但是所提供的解决方案都没有帮助。

Thank you! 谢谢! Petra 佩特拉

edit: contents of my whole .pro file: 编辑:我整个.pro文件的内容:

QT       += core

INCLUDEPATH += /usr/local/include/opencv
#LIBS += -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui

#LIBS += /usr/local/lib/libopencv_calib3d.so /usr/local/lib/libopencv_core.so /usr/local/lib/libopencv_features2d.so /usr/local/lib/libopencv_flann.so /usr/local/lib/libopencv_highgui.so /usr/local/lib/libopencv_imgcodecs.so /usr/local/lib/libopencv_imgproc.so /usr/local/lib/libopencv_ml.so /usr/local/lib/libopencv_objdetect.so /usr/local/lib/libopencv_photo.so /usr/local/lib/libopencv_shape.so /usr/local/lib/libopencv_stitching.so /usr/local/lib/libopencv_superres.so /usr/local/lib/libopencv_ts.a /usr/local/lib/libopencv_video.so /usr/local/lib/libopencv_videoio.so /usr/local/lib/libopencv_videostab.so

LIBS += 'pkg-config opencv --libs'

QT -= gui
#QT += widgets


TARGET = Test
CONFIG   += console
CONFIG   -= app_bundle

#CONFIG += link_pkgconfig
#PKGCONFIG += opencv

TEMPLATE = app


SOURCES += main.cpp

您唯一需要添加到.pro文件中的东西是:

LIBS += `pkg-config opencv --libs`

The problem was in QT += widgets! 问题出在QT + =小部件中! So, combination of lines would be 因此,线的组合将是

INCLUDEPATH += /usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui
QT += widgets

Also, important! 另外,重要!

If you don't make any changes within the source codes, rebuilding the project won't always recognize there have been changes within the .pro file! 如果您未在源代码中进行任何更改,则重建项目将不会总是识别出.pro文件中已进行更改!

That is why I had so much trouble linking it. 这就是为什么我在链接时遇到很多麻烦。 Hope it helps. 希望能帮助到你。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM