相关疑难解决方法(0)

在QtCreator中使用OpenCV 2.3和Qt

随着OpenCV 2.3的发布终于出来,我想在我的系统上编译和安装这个最新版本.由于我经常使用Qt和QtCreator,我当然希望能够在我的Qt项目中使用它.我已经尝试了几种方法几个小时但总是会出错:

首先尝试:使用WITH_QT编译OpenCV 2.3

首先,我想这样做,就像我对2.2发布一样,对我来说很好.为此我遵循了本指南:http://knowtheabc.wordpress.com/2011/02/25/windows-opencv-and-qt-creator/

  • 下载源代码
  • 设置CMake并告诉它创建MInGW Makefile并指定路径g++.exe,gcc.exeqmake.exe在我的C:\ Qt ...路径中,检查WITH_QT并生成Makefiles以进行发布.
  • 使用mingw32-make和构建并安装在shell中mingw32-make install

在成功完成此操作后,我只需要将路径添加到我的".pro"文件中,并且能够构建一些使用OpenCV的好软件(在我使用2.2版本时).基本上最后一部分在这里描述:http://knowtheabc.wordpress.com/2011/02/25/opencv-in-qt/

所以我尝试使用与旧版本一样成功编译的2.3版本.它甚至构建了我的示例程序,但是只要我执行它,它就会再次关闭并返回:-1073741515

第二次尝试:使用MinGW预先构建的OpenCV superpack

由于第一种方法不起作用,我尝试使用预构建版本.虽然这些没有启用WITH_QT,但我还是想尝试一下.

所以我下载了superpack,将其解压缩并放在某个地方.然后我想像以前一样做,并将include文件夹和dll的路径添加到我的".pro"文件中:

INCLUDEPATH+= C:/workspace/opencv/OpenCV2.3/build/include
LIBS+= C:/workspace/opencv/OpenCV2.3/build/x64/mingw/bin/*.dll
Run Code Online (Sandbox Code Playgroud)

作为编译器,我使用了当前Qt SDK附带的MinGW编译器.但这会在建造时崩溃:

C:/workspace/opencv/OpenCV2.3/build/x64/mingw/bin/libopencv_calib3d230.dll: file not recognized: File format not recognized
collect2: ld returned 1 exit status
mingw32-make[1]: *** [release\CoinDetector.exe] Error 1
mingw32-make: *** [release] Error 2
Run Code Online (Sandbox Code Playgroud)

第三次尝试:就像第二次尝试一样,但是使用VC2008编译器

我也尝试使用Qt SDK附带的vc2008编译器.所以我选择了编译器并调整了".pro"文件中的路径来使用:

LIBS+= C:/workspace/opencv/OpenCV2.3/build/x64/vc9/bin/*.dll
Run Code Online (Sandbox Code Playgroud)

但是这也会因为无法读取dll的错误而崩溃:

C:/workspace/opencv/OpenCV2.3/build/x64/vc9/bin/opencv_calib3d230.dll : fatal error LNK1107: Ungültige oder beschädigte Datei: Lesen …
Run Code Online (Sandbox Code Playgroud)

qt opencv mingw qt-creator visual-studio-2008

2
推荐指数
1
解决办法
5141
查看次数

标签 统计

mingw ×1

opencv ×1

qt ×1

qt-creator ×1

visual-studio-2008 ×1