Я пытался скомпилировать проект за последние два дня в Qt
с использованием OpenCV
, но не могу понять, почему это не так. Мое приложение имеет только main.cpp
, widget.cpp
и widget.h
Qt Creator LNK2019: Неразрешенный внешний символ с использованием OpenCV
вот мой файл .pro
QT += core gui opengl
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = FaceDetect
TEMPLATE = app
SOURCES += main.cpp\
widget.cpp
HEADERS += widget.h
FORMS += widget.ui
INCLUDEPATH += C:/opencv/build/include/
LIBS += -LC:/opencv/build/x64/vc10/lib/
-libopencv_core2410
-libopencv_highgui2410
-libopencv_imgproc2410
-libopencv_features2d2410
-libopencv_calib3d24610
и эти ошибки я получаю:
main.obj:-1: error: LNK2019: unresolved external symbol "public: void __thiscall cv::Mat::deallocate(void)" ([email protected]@[email protected]@QAEXXZ) referenced in function "public: void __thiscall cv::Mat::release(void)" ([email protected]@[email protected]@QAEXXZ)
moc_widget.obj:-1: error: LNK2001: unresolved external symbol "public: void __thiscall cv::Mat::deallocate(void)" ([email protected]@[email protected]@QAEXXZ)
moc_widget.obj:-1: error: LNK2001: unresolved external symbol "public: void __thiscall cv::Mat::deallocate(void)" ([email protected]@[email protected]@QAEXXZ)
Может кто-нибудь объяснить, почему и как я избавиться от них, пожалуйста?
Спасибо!
Что такое код, который дает вам ошибки? – deW1
Удостоверьтесь, что это не одна из проблем: проверьте, если вы создаете сборку отладки, потому что OpenCV для Visual Studio имеет имена библиотек отладки, заканчивающиеся на «d», вы можете увидеть мой ответ о том, как установить связь с debug и release http : //stackoverflow.com/questions/20588440/include-path-for-adding-an-external-library-in-qt-creator/20589013#20589013 Также вы, похоже, используете сборку с открытым кодом x64, которая не будет работать с Qt, построенным для 32 бит (и официальная страница загрузки Qt, построенная с VS2010, представляет собой 32-разрядную версию) – Zlatomir
Убедитесь, что '-libopencv_core2410' и т. д. является правильной ссылкой на имя библиотеки. Как называется библиотека? – vahancho