OpenCV DLL's are placed only in PATH environment variable, I mean:
C:\Programs\OpenCV-2.4.2\mybuildmingw\install\bin
C:\Programs\OpenCV-2.4.2\mybuildmingw\install\bin
To copy to clipboard, switch view to plain text mode
I added this line too:
C:\Programs\OpenCV-2.4.2\mybuildmingw\install\lib
C:\Programs\OpenCV-2.4.2\mybuildmingw\install\lib
To copy to clipboard, switch view to plain text mode
Where "mybuildmingw" is folder with complied OpenCV files with MinGW.
And in *.pro file I have:
INCLUDEPATH += C:/Programy/OpenCV-2.4.2/mybuildmingw/install/include
LIBS += -LC:/Programy/OpenCV-2.4.2/mybuildmingw/install/bin -llibopencv_highgui242
LIBS += -LC:/Programy/OpenCV-2.4.2/mybuildmingw/install/lib -llibopencv_highgui242
INCLUDEPATH += C:/Programy/OpenCV-2.4.2/mybuildmingw/install/include
LIBS += -LC:/Programy/OpenCV-2.4.2/mybuildmingw/install/bin -llibopencv_highgui242
LIBS += -LC:/Programy/OpenCV-2.4.2/mybuildmingw/install/lib -llibopencv_highgui242
To copy to clipboard, switch view to plain text mode
So, that was what are you talking about?
================================================== =========================
EDIT:
I've solved the problem, but it's the most weirdest thing I've ever meet in programming... I have nothing connected with OpenCV in PATH environment variable and my *.pro file is:
INCLUDEPATH += C:/Programs/OpenCV-2.4.2/mybuildmingw/install/include
INCLUDEPATH += C:/Programs/OpenCV-2.4.2/mybuildmingw/install/include/opencv
LIBS += -LC:/Programs/OpenCV-2.4.2/mybuild/lib/Debug -lopencv_highgui242d \
-lopencv_core242d
INCLUDEPATH += C:/Programs/OpenCV-2.4.2/mybuildmingw/install/include
INCLUDEPATH += C:/Programs/OpenCV-2.4.2/mybuildmingw/install/include/opencv
LIBS += -LC:/Programs/OpenCV-2.4.2/mybuild/lib/Debug -lopencv_highgui242d \
-lopencv_core242d
To copy to clipboard, switch view to plain text mode
So: "mybuildmingw" is folder with compiled OpenCV files with MinGW and "mybuild" is folder with compiled OpenCV files with MVSC+... Include files Qt takes from MinGW build and lib's from MVSC+ build. It's so weird, but it's working!
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
...
IplImage* img = cvLoadImage( "C:\\opencv.png" );
cvNamedWindow( "Example1", CV_WINDOW_AUTOSIZE );
cvShowImage("Example1", img);
cvWaitKey(0);
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
...
IplImage* img = cvLoadImage( "C:\\opencv.png" );
cvNamedWindow( "Example1", CV_WINDOW_AUTOSIZE );
cvShowImage("Example1", img);
cvWaitKey(0);
To copy to clipboard, switch view to plain text mode
================================================== =========================
EDIT2:
It's not so simple as I thought. I have another linker problem:
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
...
IplImage* img = cvLoadImage( "C:\\opencv.png" );
cvNamedWindow( "Example1", CV_WINDOW_AUTOSIZE );
cvShowImage("Example1", img);
cvWaitKey(0);
cv::VideoCapture capture(0);
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
...
IplImage* img = cvLoadImage( "C:\\opencv.png" );
cvNamedWindow( "Example1", CV_WINDOW_AUTOSIZE );
cvShowImage("Example1", img);
cvWaitKey(0);
cv::VideoCapture capture(0);
To copy to clipboard, switch view to plain text mode
And *.pro:
INCLUDEPATH += C:/Programs/OpenCV-2.4.2/mybuildmingw/install/include
INCLUDEPATH += C:/Programs/OpenCV-2.4.2/mybuildmingw/install/include/opencv
LIBS += -LC:/Programs/OpenCV-2.4.2/mybuild/lib/Debug \
-lopencv_calib3d242d \
-lopencv_contrib242d \
-lopencv_core242d \
-lopencv_features2d242d \
-lopencv_flann242d \
-lopencv_gpu242d \
-lopencv_haartraining_engined \
-lopencv_highgui242d \
-lopencv_imgproc242d \
-lopencv_legacy242d \
-lopencv_ml242d \
-lopencv_nonfree242d \
-lopencv_objdetect242d \
-lopencv_photo242d \
-lopencv_stitching242d \
-lopencv_ts242d \
-lopencv_video242d \
-lopencv_videostab242d
INCLUDEPATH += C:/Programs/OpenCV-2.4.2/mybuildmingw/install/include
INCLUDEPATH += C:/Programs/OpenCV-2.4.2/mybuildmingw/install/include/opencv
LIBS += -LC:/Programs/OpenCV-2.4.2/mybuild/lib/Debug \
-lopencv_calib3d242d \
-lopencv_contrib242d \
-lopencv_core242d \
-lopencv_features2d242d \
-lopencv_flann242d \
-lopencv_gpu242d \
-lopencv_haartraining_engined \
-lopencv_highgui242d \
-lopencv_imgproc242d \
-lopencv_legacy242d \
-lopencv_ml242d \
-lopencv_nonfree242d \
-lopencv_objdetect242d \
-lopencv_photo242d \
-lopencv_stitching242d \
-lopencv_ts242d \
-lopencv_video242d \
-lopencv_videostab242d
To copy to clipboard, switch view to plain text mode
And error occurs:
(...) undefined reference to `cv::VideoCapture::VideoCapture(int)'
(...) undefined reference to `cv::VideoCapture::~VideoCapture()'
collect2: ld returned 1 exit status
(...) undefined reference to `cv::VideoCapture::VideoCapture(int)'
(...) undefined reference to `cv::VideoCapture::~VideoCapture()'
collect2: ld returned 1 exit status
To copy to clipboard, switch view to plain text mode
Any ideas?
Bookmarks