OpenCV3.0 使用 Qt creator 3.2 & Qt 5.4 构建错误 "mingw32-make: *** [Makefile] Error 3"

OpenCV3.0 With Qt creator 3.2 & Qt 5.4 build error "mingw32-make: *** [Makefile] Error 3"

我在 Windows 7 机器上用 Qt5.4 和 Qt Creator 3.2 64 位编译了 OpenCV 3.0。

我一直在尝试在加载图片时执行最基本的 OpenCV 功能。不幸的是,它给出了以下错误:

C:\Qt\qt-5.4.0-x64-mingw492r0-sjlj\qt-5.4.0-x64-mingw492r0-sjlj\bin\qmake.exe -spec win32-g++ CONFIG+=release -o Makefile ..\opencv_xpto\opencv_xpto.pro C:/Users/Nelson Faria/Documents/Programacao/opencv_xpto/opencv_xpto.pro:14: Extra characters after test expression. Error processing project file: ..\opencv_xpto\opencv_xpto.pro makefile:175: recipe for target 'Makefile' failed mingw32-make: *** [Makefile] Error 3 20:53:17: The process "C:\Qt\qt-5.4.0-x64-mingw492r0-sjlj\mingw64\bin\mingw32-make.exe" exited with code 2. Error while building/deploying project opencv_xpto (kit: Qt 5.4) When executing step "Make" 20:53:17: Elapsed time: 00:01.

我要执行的代码如下:

   '#include <iostream>
    #include "opencv2/core/core.hpp"
    #include "opencv2/highgui/highgui.hpp"
    #include "opencv/cv.h"

    using namespace std;

    int main()
    {
        cout << "Hello World!" << endl;

        cv::Mat mat;
        mat = cv::imread("img.JPG");
        cv::namedWindow("hello");
        cv::imshow("hello",mat);

        cv::waitKey(0);

        return 0;
    }

最后是 .pro

TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += main.cpp

INCLUDEPATH += C:\opencv-mingw\install\include
LIBS += -LC:\opencv-mingw\install\x64\mingw\lib
    -lopencv_core300.dll \
    -lopencv_highgui300.dll \
    -lopencv_imgproc300.dll \
    -lopencv_features2d300.dll \
    -lopencv_calib3d300.dll

include(deployment.pri)
qtcAddDeployment()'

谁能告诉我我哪里做错了?

像这样更正 pro 文件:

TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += main.cpp

INCLUDEPATH += C:/opencv-mingw/install/include
LIBS += -LC:/opencv-mingw/install/x64/mingw/lib
    -lopencv_core300 \
    -lopencv_highgui300 \
    -lopencv_imgproc300 \
    -lopencv_features2d300 \
    -lopencv_calib3d300

include(deployment.pri)
qtcAddDeployment()


如果发生崩溃,很可能是应用程序无法加载 openCV dll。有两种方法可以解决此问题:

  • 将这些 dll 复制到包含您的可执行文件的目录(最有可能或多或少是这样的:<your roject location>\..\debug-windows-64x-qt5-XXX
  • 添加到那些dll的路径变量位置