【发布时间】:2016-06-16 12:14:53
【问题描述】:
我正在尝试配置一个新的 Qt Creator 项目,以便在 Windows 10 中使用 OpenCV 3.1.0。我从 http://opencv.org/downloads.html 下载了预编译的二进制文件,并创建了一个空的 Qt gui 项目。问题是 qmake 找不到 opencv 标头,无论我如何尝试包含它们的路径。这是我最后一次尝试:
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = App_v1
TEMPLATE = app
INCLUDEPATH += C:/OpenCV-3.1.0/opencv/build/include
LIBS += -L”C:\OpenCV-3.1.0\opencv\build\x64\vc14\lib”
LIBS += -lopencv_world310d
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
来源:
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include "mainwindow.h"
#include <QApplication>
using namespace std;
int main(int argc, char *argv[])
{
cv::Mat image = cv::Mat::zeros(100, 100, CV_8UC3);
cv::imshow("image", image);
cv::waitKey(10);
cout << "Hello cout!" << endl;
cerr << "Hello cerr!" << endl;
printf("Hello printf!");
cout << flush;
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
当我尝试编译它时,我得到:“C1083:无法打开包含文件:'opencv2/core/core.hpp”:没有这样的文件或目录 (顺便感谢 Qt Creator 不让我选择和复制错误的文本。对不起,我离题了...)
我确定路径是正确的,有趣的是,当我输入 cv:: 时,自动补全会找到并列出 cv 命名空间中的类和函数……这是怎么回事?
顺便说一句,OpenCV 与 Visual Studio 完美配合,所以我知道它安装正确...
【问题讨论】:
-
不应该是
C:\OpenCV-3.1.0\opencv\build\x64\vc14\lib而不是C:\OpenCV-3.1.0\opencv\build\x64\vc14\bin吗? -
@Sunreef 确实如此。这是我的第二个错误,它导致了链接错误(现已更正)。在这种情况下,core.hpp无法加载不是因为.pro文件中的设置不正确,而是因为项目需要清理......
标签: opencv qmake include-path