Install gocv "gocv.io/x/gocv" on Windows
- gocv 0.29.0 - https://github.com/hybridgroup/gocv/tree/v0.29.0
- opencv 4.5.4 - https://github.com/opencv/opencv/tree/4.5.4
- https://github.com/opencv/opencv/archive/4.5.4.zip
- https://github.com/opencv/opencv_contrib/archive/4.5.4.zip
- Assuming you've already installed
go
andgit
.- Download Windows Go installer: https://go.dev/dl
- Downlaod Windows Git installer: https://git-scm.com/download/win
- Install
MSYS2
.- Download MSYS2 installer: https://www.msys2.org
- Run
pacman -S make cmake gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-gcc mingw-w64-x86_64-toolchain
from yourMSYS2
terminal. - Uncomment
MSYS2_PATH_TYPE=inherit
inmsys2.ini
,mingw64.ini
andmingw32.ini
. - Add
D:\msys64\mingw64\bin
andD:\msys64\usr\bin
to your system'sPath
environment variable.
Run the following in cmd.exe
.
mkdir D:\opencv\build
cd /D D:\opencv\build
set enable_shared=ON
cmake D:\opencv\opencv-4.5.4 -G "MinGW Makefiles" -BD:\opencv\build -DENABLE_CXX11=ON -DOPENCV_EXTRA_MODULES_PATH=D:\opencv\opencv_contrib-4.5.4\modules -DBUILD_SHARED_LIBS=%enable_shared% -DWITH_IPP=OFF -DWITH_MSMF=OFF -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DBUILD_opencv_java=OFF -DBUILD_opencv_python=OFF -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF -DBUILD_DOCS=OFF -DENABLE_PRECOMPILED_HEADERS=OFF -DBUILD_opencv_saliency=OFF -DBUILD_opencv_wechat_qrcode=OFF -DCPU_DISPATCH= -DOPENCV_GENERATE_PKGCONFIG=ON -DWITH_OPENCL_D3D11_NV=OFF -DOPENCV_ALLOCATOR_STATS_COUNTER_TYPE=int64_t -Wno-dev
mingw32-make -j%NUMBER_OF_PROCESSORS%
mingw32-make install
This should install opencv
under directory D:\opencv\
.
rmdir D:\opencv\opencv-4.5.4 /s /q
rmdir D:\opencv\opencv_contrib-4.5.4 /s /q
4. Set environment variables in order to provide gcc
with global include/library paths to your opencv
.
- Add
D:\opencv\build\install\x64\mingw\bin
to yourLIBRARY_PATH
andPath
environment variable. - Add
D:\opencv\build\install\include
to yourCPLUS_INCLUDE_PATH
environment variable.
If you want to find out your gcc's default include path:
$ echo | gcc -v -x c++ -E -
#include <...> search starts here:
D:\opencv\build\install\include
Either way you prefer.
go get -v gocv.io/x/gocv@v0.29.0
$ git clone https://github.com/hybridgroup/gocv $GOPATH/src/gocv.io/x/gocv
$ cd $GOPATH/src/gocv.io/x/gocv
$ git checkout v0.29.0
$ go install -v
chdir /D %GOPATH%\src\gocv.io\x\gocv
go install -v ./...