OpenCV Build Mingw.md - erdTony/Eclipse7doc GitHub Wiki
Building OpenCV4 on Mingw
^Initial Draft: June 23, 2025^
References
Prerequsites
- Assuming Windows 10/11
Qt v6.10+
- Assuming Qt6 installed at
[C:]/Qt
CMake v3+
- $
cd /opt/Qt/Tools/CMake_64/bin
- $
./cmake --version
(using v3.31.5)
mingw
- Test:
c++ --version
(using v13.1.0) - Test:
gdb --version
(using v11.2)
Environment
- Add:
[C:]\Qt\Tools\llvm-mingw1706_64\bin
to PATH - Add:
[C:]\Qt\Tools\CMake_64\bin
to PATH - (Restart shell if needed)
Source Code
- Assuming base repository at
/code/repo
- fork and clone https://github.com/opencv/opencv/tree/4.11.0 or latest (we actually got 4.12)
- fork and clone https://github.com/opencv/opencv_contrib/tree/4.11.0 or latest
CMake Setup
- If new run,
delete /code/temp/opencv4[d]/build
- Run
cmake-gui
- Source:
/code/repo/opencv
- Build:
/code/temp/OpenCV4[d]/build
- 'd' for debug - Deploy later:
/data/code/3rdParty/opencv4[d]
- Configure
- Yes if build directory doesn't exist, It Shouldn't!
- Specify MinGW Makefiles
- Select Use default native compilers
- Finish
CMake Configuration
-
CMAKE
- Add: CMAKE_MAKE_PROGRAM FILEPATH to [C:]/Qt/Tools/CMake_64/bin/cmake.exe
- Set: CMAKE_BUILD_TYPE to Release
- Set: CMAKE_INSTALL_PREFIX to /code/3rdParty/OpenCV4
-
BUILD
- Check: BUILD_DOCS BUILD_EXAMPLES BUILD_OPENJPEG
- Uncheck: BUILD_opencv_dnn BUILD_JAVA
Uncheck all BUILD_opencv_* except core, imageproc, objdetect- Check all except _world (need prerequsites for objdetect)
- If NOT Release Build Check: BUILD_WITH_DEBUG_INFO
-
OPENCV
- Set: OPENCV_EXTRA_MODULES_PATH as /code/repo/opencv_contrib/modules
-
WITH
- Check: WITH_QT
- Uncheck: _ADE _AVIF _EIGEN _FFMPEG IMGCODEC* _JASPER _PNG _TIFF
-
QT
- Add: QT_QMAKE_EXECUTABLE FILEPATH /Qt/6.9.1/llvm-mingw_64/bin/qmake.exe
- Add: Qt6_DIR PATH /Qt/6.9.1
-
INSTALL
-
Check all (trying for prereq for objdetect)
-
Check: INSTALL_C_EXAMPLES -
Check: INSTALL_TESTS
Build!
- $
cd /code/temp/opencv4[d]/build
- $
mingw32-make -B
- Make a pot of coffee
- $ make install
Integrate
- Create
OpenCV4.pri
file in/code/repo/Eclipse7
# file: {Eclipse7 repo}/OpenCV4.pri
INCLUDEPATH *= /code/3rdParty/OpenCV4/include
LIBS *= -L/code/3rdParty/OpenCV4/x64/mingw/libs
LIBS *= -lopencv_core4100
LIBS *= -lopencv_imageproc4100
LIBS *= -lopencv_objdetect4100