Windows MS Visual C++ Install OpenCV
Download
OpenCV installer and install it. I assume you have installed onto C:/Program Files/OpenCV.
Setup MS Visual C++
I write details based on MS Visual Studio 2005. Follow menus of MS Visual C++ window as:
- Tools > Options > Projects and Solutions > VC++ directories >
- Show Directory for: > Include Files. Now add
C:/Program Files/OpenCV/cv/includeC:/Program Files/OpenCV/cvaux/includeC:/Program Files/OpenCV/cxcore/includeC:/Program Files/OpenCV/otherlibs/highguiC:/Program Files/OpenCV/ml/includeC:/Program Files/OpenCV/otherlibs/cvcam/include
- Show Directory for: > Library Files. Now add
C:/Program Files/OpenCV/lib
- (Option) Show Directory for: > Source Files. Now add
C:/Program Files/OpenCV/cv/srcC:/Program Files/OpenCV/cvaux/srcC:/Program Files/OpenCV/cxcore/srcC:/Program Files/OpenCV/otherlibs/highguiC:/Program Files/OpenCV/otherlibs/cvcam/src/windows
Setup MS Visual C++ for each project
- Right Click Project > Property >
- Configuration Proeperties > Linker > Input > Additional Dependencies. Now add
- cv.lib cxcore.lib cvaux.lib highgui.lib ml.lib cvcam.lib
- Change 'Configuration' drop down menu from Release (Debug) to Debug (Release).
- Do the same thing (Add .libs to Input)
Or, add below codes into your source codes above #include(s).
#ifdef _MSC_VER#pragma comment(lib, "cv.lib")#pragma comment(lib, "cxcore.lib")#pragma comment(lib, "cvaux.lib")#pragma comment(lib, "highgui.lib")#pragma comment(lib, "ml.lib")#pragma comment(lib, "cvcam.lib")#endif
MinGW gcc/g++ Install MinGW
MinGWis a collection of freely available and freely distributable Windowsspecific header files and import libraries, augmenting the GNU CompilerCollection, (GCC), and its associated tools, (GNU binutils). MinGWprovides a complete Open Source
programming tool set which is suitablefor the development of native Windows programs that do not depend onany 3rd-party C runtime DLLs.
- Download Automated MinGW Installer from
MinGW project page and install.
- Install gcc and g77
- Assume MinGW is installed on C:/MinGW
- MinGW originally does not include gdb debugger. If you want it, download .tar.bz2 of GNU Source-Level Debugger from
MinGW project page and unarchive it.
- Copy files into C:/MinGW
How To Compile
g++ test.cpp -I"C:/Program Files/OpenCV/cv/include" -I"C:/Program Files/OpenCV/cxcore/include" -I"C:/Program Files/OpenCV/otherlibs/highgui" -L"C:/Program Files/OpenCV/lib" -lcxcore -lcv -lhighgui -lcvaux -lml
How to Use MinGW on cygwin
Cygwinis a Linux-like environment for Windows. It consists of two parts: ADLL (cygwin1.dll) which acts as a Linux API emulation layer providingsubstantial Linux API functionality. A collection of tools whichprovide Linux look and feel.
http://www.cygwin.com/
Setup to use MinGW g++ instead of cygwin g++
$ export PATH=/cygdrive/c/MinGW/bin:$PATH
Linux gcc/g++
Download
OpenCV source codes (.tar.gz)
Root user
tar zxvf opencv-1.0.0.tar.gz; cd opencv-1.0.0./configuremakemake install
General user
tar zxvf opencv-1.0.0.tar.gz; cd opencv-1.0.0./configure --prefix=$HOME/usrmakemake install# configurationexport PATH=$HOME/usr/bin/:$PATHexport LD_LIBRARY_PATH=$HOME/usr/lib:$LD_LIBRARY_PATHexport PKG_CONFIG_PATH=$HOME/usr/lib/pkgconfig:$PKG_CONFIG_PATHexport MANPATH=$HOME/usr/man:$MANPATH
Compilation is as
g++ `pkg-config --cflags opencv` foo.c -o foo `pkg-config --libs opencv`
It must be equivalent with
g++ -I$HOME/usr/include/opencv foo.c -o foo -L$HOME/usr/lib -lcxcore -lcv -lhighgui -lcvaux -lml
where $HOME/usr is the prefix specified at the ./configure step.
MacOS X
I tried long time ago, there should exist easier ways nowadays.
Sample Test code
#include #include #include #include #include int main(int argc, char *argv[]){ // Nothing but create a window cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE); cvMoveWindow("mainWin", 100, 100); cvWaitKey(0); return 0;}