Originalsource: http://carrierfrequency.blogspot.com/2011/05/opencv-22-in-windows-using-eclipse-ide.html
The latest release of OpenCV (version 2.2) has undergonedramatic changes to the library. Because of these changes, my olderguide is now outdated. For OpenCV version 2.2, please use thisguide.
First download and setup the basics:
- Get MinGW
- Download Eclipse C/C++ IDE
Note: I have a tutorial on these two steps already so justhead over
HERE for more info.
- Next download/install OpenCV 2.2
- Now launch Eclipse and start a new project by going to:
- File->New->C++ Project (or File->New->CProject)
- Give your project a name in the "Project name" box
- Select the "Hello World" option under the "ProjectType" section under the"Executable" folder. I recommendthis over the "Empty Project" as it creates the c/c++ filefor you instead of having to do it manually (it also creates a"src" folder and a"Debug" folder which helps keepthings a little more organized)
- Make sure the "MinGW" Toolchain is selected in the"Toolchains" section
- Hit NEXT
- Fill in your Author and other file information, then hitNEXT
- In the next window select "Advanced settings...". Thiswill bring you to the "Project Settings" which can always beaccessed later by going to Project->Properties
- Under the "C/C++ Build" Section go to the"Settings" and select the "Tool Settings"Tab. Thenselect the "Includes" folder (on older versions of eclipseit is the "Directories" folder) in the GCC Compiler branchand add the opencv include directory to Include paths (-I):"C:\OpenCV2.2\include\". Of course, change C:\OpenCV2.2 tomatch the installed path that you used.
- Now, under the MinGW Linker select the"Libraries" folder and add the following to the Libraries(-l) section (note not all of these are necessarily needed foryour project but these are all the libraries available in opencvversion 2.2):
- opencv_calib3d220
- opencv_contrib220
- opencv_core220
- opencv_features2d220
- opencv_ffmpeg220
- opencv_flann220
- opencv_gpu220
- opencv_highgui220
- opencv_imgproc220
- opencv_legacy220
- opencv_ml220
- opencv_objdetect220
- opencv_ts220
- opencv_video220
In most cases you will only need opencv_core220 andopencv_highgui220 to get started
(Add NOTE:You need to change the namesaccording to the version of opencv you are using)
NOTE: Versions 2.2 and later postfix the librariesnames with a three digit number that corresponds to the version ofOpenCV that you are linking to.
FINALLY, under the
"Library search path (-L)" sectionadd:
- "C:\OpenCV2.2\lib"
- Hit OK when done
- Hit Finish to create and start the Project
NOTE: The way this guide was written will
require you to use a
relative path to specify theheader files you wish to include. OpenCV breaks up the library intotwo sections, "legacy libraries" and "new libraries".
If you wish to specify one of the new opencv libraries use thefollowing format:
#include "opencv2\[subfolder]\[library.hpp]"
ADDITIONALLY, if you wish to include all of the primaryopencv2 header files in a project you can use:
#include "opencv2\opencv.hpp"
Note: opencv.hpp does not include every library in OpenCV2.2.It may be helpful for you to view the "opencv.hpp" library (locatedby default in: C:\OpenCV2.2\include\opencv2\opencv.hpp) to see whatis included and how you can reference the new libraries in yourcode. To see the
complete list of libraries available, go to"C:\OpenCV2.2\include\" and browse around the directory.
Legacy libraries can be defined by: #include"opencv\[library.hpp]"
If you get an error, during compile time, pertaining to:
__exchange_and_add
Then visit this page and follow the instructions under:
Building on Windows using MinGW3.4.5