Qt Creator 3.1.2+Qt 5.3.1+OpenCV 3.0 开发环境下,找不到头文件的错误解决办法



  当在Qt Creator 中编辑完.pro文件后,构建项目出现错误,但我确定配置文件中没有写错,查了许多资料,

错误信息如下:


  F:\OpenCV_Qt\main.cpp:1: error: C1083: 无法打开包括文件: “opencv2/opencv.hpp”: No such file or directory


查找过的资料链接:

   http://www.librehat.com/qt-5-2-vs2012-opencv-2-4-7-dev-environment-setup-tutorial/


解决方法:

  在配置完.pro文件后,最好先点击:构建|执行qmake 命令来使对.pro的更改生效。之后再生成项目。


解决过程:

新建Qt控制台应用程序,用下面的代码替换Qt Creator自动生成的代码,其中的读取图片的路径因人而异:

#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
    Mat img = imread("F:\\OpenCV3.0\\OpenCV3.0\\9.jpg");
    if (img.empty())
    {
        fprintf(stderr, "Error: load image failed.");
        return -1;
    }
    namedWindow("image", WINDOW_AUTOSIZE);
    imshow("image", img);
    waitKey();
    return 0;
}

在Qt工程的.pro文件中设置了如下内容,其中的OpenCV的头文件目录和库目录都是我的机器上的安装目录,读者适当更改为自己的。

#-------------------------------------------------
#
# Project created by QtCreator 2014-09-16T17:41:45
#
#-------------------------------------------------

QT       += core

QT       -= gui

TARGET = OpenCV_Qt
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app


SOURCES += main.cpp

INCLUDEPATH += F:\OpenCV-bin-packages\include

win32:CONFIG(debug, debug|release): {
LIBS += -LF:\OpenCV-bin-packages\x86\vc12\lib \
-lopencv_calib3d300d    \
-lopencv_core300d       \
-lopencv_features2d300d \
-lopencv_flann300d      \
-lopencv_highgui300d    \
-lopencv_imgcodecs300d  \
-lopencv_imgproc300d    \
-lopencv_ml300d         \
-lopencv_objdetect300d  \
-lopencv_photo300d      \
-lopencv_shape300d      \
-lopencv_stitching300d  \
-lopencv_superres300d   \
-lopencv_ts300d         \
-lopencv_video300d      \
-lopencv_videoio300d    \
-lopencv_videostab300d  \
-lopencv_viz300d


} else:win32:CONFIG(release, debug|release): {
LIBS += -LF:\OpenCV-bin-packages\x86\vc12\lib \
-lopencv_calib3d300    \
-lopencv_core300       \
-lopencv_features2d300 \
-lopencv_flann300      \
-lopencv_highgui300    \
-lopencv_imgcodecs300  \
-lopencv_imgproc300    \
-lopencv_ml300         \
-lopencv_objdetect300  \
-lopencv_photo300      \
-lopencv_shape300      \
-lopencv_stitching300  \
-lopencv_superres300   \
-lopencv_ts300         \
-lopencv_video300      \
-lopencv_videoio300    \
-lopencv_videostab300  \
-lopencv_viz300

}

执行程序构建时出现如下错误:


执行一次 构建|执行qmake 并再次构建程序,就没有错误了:




你可能感兴趣的:(qt,opencv,头文件,Creator,执行qmake)