Home > Software engineering >  Building opencv from source in Mac m1
Building opencv from source in Mac m1

Time:02-11

I'm using the following Make to build OpenCV from source,

 cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
  -D OPENCV_EXTRA_MODULES_PATH=/Users/Tools/opencv_contrib/modules \
  -D PYTHON3_EXECUTABLE=/miniforge/base/envs/envname/bin/python3 \
    -D BUILD_opencv_python2=OFF \
    -D BUILD_opencv_python3=ON \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D WITH_TBB=ON \
    -D WITH_V4L=ON \
    -D INSTALL_C_EXAMPLES=OFF \
    -D OPENCV_ENABLE_NONFREE=ON \
    -D WITH_OPENGL=ON \
     -DBUILD_ZLIB=OFF \
  -D OPENCV_EXTRA_MODULES_PATH=/Users/Tools/opencv_contrib/modules \
    -D BUILD_EXAMPLES=ON ..

Unfortunately it doesn't build. It throws the following error,

: error: unknown type name 'AVBSFContext'; did you mean 'AVIOContext'?

I have of course installed FFmpeg. what am I still missing?

CodePudding user response:

I think that you've installed ffmpeg 5 and OpenCV is not yet compatible with it. Please try the following:

brew install ffmpeg@4
brew unlink ffmpeg
brew link ffmpeg@4

and then recompile OpenCV again.

  • Related